summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/debug/debugcmd.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-3115/+0
|
* making logerror part of machine and device classes [Miodrag Milanovic] Miodrag Milanovic2015-11-011-1/+1
| | | | display tag of device that logged message
* Give message if debugger comments are not saved (nw) yz70s2015-10-071-0/+2
|
* *duh* Olivier Galibert2015-06-241-1/+1
|
* memory: Remove support for decrypted bases, use an address space instead [O. ↵ Olivier Galibert2015-06-241-7/+11
| | | | Galibert]
* License self-service. Aaron Giles2015-05-251-1/+1
| | | | | | License self-service. Mostly adding attribution where I made significant contributions. In a few cases files I previously missed were default-attributed to Nicola.
* lot more updated (nw) Miodrag Milanovic2015-05-111-5/+2
|
* Added dummy license headers for EMU section (nw) Miodrag Milanovic2015-05-071-0/+2
|
* moved all to std::string (nw) Miodrag Milanovic2015-04-221-32/+32
|
* removed bool conversion and implicit empty check (nw) Miodrag Milanovic2015-04-191-8/+8
|
* Replace dynamic_array with std::vector [O. Galibert] Olivier Galibert2015-04-141-6/+6
|
* There is no implicit conversion to char* in std::string (nw) Miodrag Milanovic2015-04-121-5/+5
|
* cstr() - > c_str() as preparation for move to std::string (nw) Miodrag Milanovic2015-04-111-8/+8
|
* Fixed strange display of long strings in Qt debugger (nw). Andrew Gardner2014-10-191-8/+2
|
* Make cheat initialization debugger message more verbose. [Pugsy] Scott Stone2014-10-081-1/+4
|
* Memory system and Namco improvements: [Alex Jackson] Alex W. Jackson2014-09-181-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explicit regions in address maps (AM_REGION) are now looked up relative to the device rather than as siblings when in an internal address map (similar to devices and shared pointers) Besides being more orthogonal than before, this allows internal ROMs of MCUs and similar devices to be hooked up in a nicer and more foolproof way. Updated the m37710 and m5074x (m6502 derivative) to take advantage of this. Divided the M37702/M37710 into specific models, with each model having its own internal address map containing the correct amounts of internal RAM and ROM. M37702 MCUs found on various Namco PCBs are now all unique devices and have their respective internal ROMs loaded as device ROMs. (nw) Also did some spring (fall) cleaning in addrmap.c/memory.c/dimemory.c m_devbase (the base device used for tagmap lookup when late-binding handlers and finding memory regions and shares) is now a reference rather than a pointer, since we know what it is when the address_map_entry is constructed and it doesn't change (it depends solely on whether it's an entry in an MCFG-provided address map or an internal one) And for the same reason, there's now only one m_devbase per address_map_entry rather than individual copies for read/write/setoffset/sharedptr. Removed mysterious unused address_map_entry member "m_region_string", along with a silly assert probably left over from when Aaron was replacing AM_BASE with AM_SHARE years ago. Added a comment noting that "make sure all devices exist" in device_memory_interface::interface_validity_check() actually does nothing, like the proverbial goggles. The reason there's just a comment and not a fix is I haven't figured out how to fix it yet (is it possible to extract the original device tag that was given to a proto-delegate? Sorry, the template hell in devdelegate.h and lib/util/delegate.h makes me want to run screaming like a little girl)
* Fixed cheatnext command. (nw) Sandro Ronco2014-05-191-9/+11
|
* Moved eminline and related files into /src/osd since it's system related (nw) Miodrag Milanovic2014-04-161-1/+1
| | | | | | | | Moved delegates into /src/lib/util to enable usage of delegates in other project parts Moved mame_printf_* calls into /src/osd/osdcore.c and renamed them to osd_printf_* Changed mess.mak to display compilation of ymmu100.ppm nicely
* device_gfx_interface and memory system improvements: [Alex Jackson] Alex W. Jackson2014-04-081-3/+3
| | | | | | | | | | | Added macros to facilitate declaring gfxdecode info arrays as members of a device class. AM_SHAREs in a device's internal address map or its default address map are now tagmapped as children of that device rather than siblings (analogous to how handlers in internal/default address maps are scoped). Converted the Namco C45 to device_gfx_interface.
* reverting, sorry for this vconv needs to be updated (nw) Miodrag Milanovic2014-03-311-8/+8
|
* VS2013 x64 is little bit more anal about signed/unsigned comparison (nw) Miodrag Milanovic2014-03-311-8/+8
|
* made MAME and MESS compile under VS2013, 32bit only for now (nw) Miodrag Milanovic2014-03-311-3/+3
| | | OG: please check things in H8 core, thing in timer16 can caused some issues in past
* removed mame_* aliases and just use core_* functions (nw) Oliver Stöneberg2014-03-241-1/+1
|
* Another round of auto_alloc_array conversions. Aaron Giles2014-02-201-20/+7
| | | | | Some minor enhancements to dynamic_array, including clearing to specific values and expanding and clearing newly allocated values.
* Cleanups and version bumpmame0150 Miodrag Milanovic2013-09-171-2/+2
|
* Adds a watchpoint debug view. [Andrew Gardner] Andrew Gardner2013-07-261-3/+4
|
* Fixes for building MAME with Visual Studio 2013 preview [smf] smf-2013-07-051-7/+7
|
* QT Debugger: WIP for a new breakpoints window. [Andrew Gardner] Andrew Gardner2013-06-061-2/+2
| | | | | | | --out of whatsnew.txt-- You can't click to enable/disable breakpoints yet, and the number of rows doesn't resize yet, but that stuff will come.
* Cleanups and version bumpmame0148u5 Miodrag Milanovic2013-05-201-4/+4
|
* Adds statesave (ss) & stateload (sl) commands to the debugger. [Andrew Gardner] Andrew Gardner2013-05-141-12/+51
|
* Adds memory tracking to debugger. This includes two new commands: trackmem and Andrew Gardner2013-05-091-3/+86
| | | | | | | | | | | | | | | | | | pcatmem(p|d|i). [Andrew Gardner] Fixes left-click selection bug in the memory window. [Andrew Gardner] Explanation: ------------ Call trackmem to start tracking which PC writes to which address in memory and pcatmem(p|d|i) to query a memory region for which PC wrote to it. Users of the QT debugger can also right click on a memory address in the memory window to make a popup message appear with the results - right-clicking also automatically copies the resultant PC onto the clipboard. (I'll attach an image of this behavior in a follow-up mail).
* QT Debugger: Adds trackpc command, allowing for a visual display of where the Andrew Gardner2013-04-201-0/+44
| | | | | | | | | | | | | | | | | | | | program counter has visited in the dasm windows. Run "help trackpc" in the debugger to see the options. [Andrew Gardner] Out of whatsnew: This isn't enabled by default because of how sloooow it is to disassemble each opcode when you want to compute its crc32. That can be sped up with lookup tables and the like. There's a good chance I should pull the 'clear tracks' argument into its own command, but it functions as-is. This can be added to the windows debugger with a simple change to the osd display code.
* Cleanups and version bumpmame0148u3 Miodrag Milanovic2013-04-091-1/+1
|
* QT Debugger: The memory view chunk size radio now reports proper sizes. Andrew Gardner2013-04-021-1/+4
| | | | | | | Fixed "ignore" command reporting incorrect invalid CPUs. Fixed crazy code responsible for opcodes' crc32s in the comments system (what was I thinking back then?). [Andrew Gardner]
* revision 21548 caused "trace off" to crash with a access violation [smf] smf-2013-03-161-5/+1
|
* Debugger: [Wilbert Pol] Wilbert Pol2013-03-111-0/+151
| | | | | | - Added support for registerpoints. - Added 'exit' as a synonym for 'quit'.
* Added the ability to tracelog to '{game}' (without the quotes); performing a Nathan Woods2013-03-031-3/+7
| | | | | substitution when the trace is run.
* Fixing natural keyboard debugger commands (input, dumpkbd) Nathan Woods2013-02-101-0/+52
|
* QT Debugger improvements [Andrew Gardner] Andrew Gardner2013-01-241-2/+8
| | | | | | | | | | - Save and load window locations. - Preliminary work on "run and hide" and "hard reset" (don't crash on one of my copmilers but do on another - more work to do!) - Fixed color when cursor is the same as PC in debug view. - Closing the main window now shuts down the machine (same as quit) - Help now wraps to the log window size.
* Cleanups and version bumpmame0148 Miodrag Milanovic2013-01-111-61/+61
|
* Since nobody checks for NULLs anyway, make Aaron Giles2012-09-191-2/+2
| | | | | | | | | | | | device_memory_interface::space() assert against NULL and return a reference, and pushed references throughout all address space usage in the system. Added a has_space() method to check for those rare case when it is ambiguous. [Aaron Giles] Also reinstated the generic space and added fatal error handlers if anyone tries to actually read/write from it.
* Memory handler normalization, part 2. Change legacy Aaron Giles2012-09-171-41/+41
| | | | | | | read/write handlers to take an address_space & instead of an address_space *. Also update pretty much all other functions to take a reference where appropriate. [Aaron Giles]
* First pass at modernizing struct definitions. Aaron Giles2012-09-151-8/+4
|
* Converted memory_private to memory_manager and moved global memory Aaron Giles2012-04-051-1/+1
| | | | | | operations into methods on it. Converted the less-popular cases over in drivers that used them, leaving the bank management APIs global for now.
* Sync with MESS, including OG's fix for exiting with debugger active (no ↵ Miodrag Milanovic2012-01-261-5/+0
| | | | whatsnew)
* Move devices into a proper hierarchy and handle naming Aaron Giles2012-01-241-31/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and paths consistently for devices, I/O ports, memory regions, memory banks, and memory shares. [Aaron Giles] NOTE: there are likely regressions lurking here, mostly due to devices not being properly found. I have temporarily added more logging to -verbose to help understand what's going on. Please let me know ASAP if anything that is being actively worked on got broken. As before, the driver device is the root device and all other devices are owned by it. Previously all devices were kept in a single master list, and the hierarchy was purely logical. With this change, each device owns its own list of subdevices, and the hierarchy is explicitly manifest. This means when a device is removed, all of its subdevices are automatically removed as well. A side effect of this is that walking the device list is no longer simple. To address this, a new set of iterator classes is provided, which walks the device tree in a depth first manner. There is a general device_iterator class for walking all devices, plus templates for a device_type_iterator and a device_interface_iterator which are used to build iterators for identifying only devices of a given type or with a given interface. Typedefs for commonly-used cases (e.g., screen_device_iterator, memory_interface_iterator) are provided. Iterators can also provide counts, and can perform indexed lookups. All device name lookups are now done relative to another device. The maching_config and running_machine classes now have a root_device() method to get the root of the hierarchy. The existing machine->device("name") is now equivalent to machine->root_device().subdevice("name"). A proper and normalized device path structure is now supported. Device names that start with a colon are treated as absolute paths from the root device. Device names can also use a caret (^) to refer to the owning device. Querying the device's tag() returns the device's full path from the root. A new method basetag() returns just the final tag. The new pathing system is built on top of the device_t::subtag() method, so anyone using that will automatically support the new pathing rules. Each device has its own internal map to cache successful lookups so that subsequent lookups should be very fast. Updated every place I could find that referenced devices, memory regions, I/O ports, memory banks and memory shares to leverage subtag/subdevice (or siblingtag/siblingdevice which are built on top). Removed the device_list class, as it doesn't apply any more. Moved some of its methods into running_machine instead. Simplified the device callback system since the new pathing can describe all of the special-case devices that were previously handled manually. Changed the core output function callbacks to be delegates. Completely rewrote the validity checking mechanism. The validity checker is now a proper C++ class, and temporarily takes over the error and warning outputs. All errors and warnings are collected during a session, and then output in a consistent manner, with an explicit driver and source file listed for each one, as well as additional device and/or I/O port contexts where appropriate. Validity checkers should no longer explicitly output this information, just the error, assuming that the context is provided. Rewrote the software_list_device as a modern device, getting rid of the software_list_config abstraction and simplifying things. Changed the way FLAC compiles so that it works like other external libraries, and also compiles successfully for MSVC builds.
* Cleanups and version bumpmame0142u6 Angelo Salese2011-06-191-7/+7
|
* Added image devices support to debugger [Miodrag Milanovic] Miodrag Milanovic2011-06-081-1/+69
|
* Fixed the disassembly of the "mov ax, mem" instructions (opcodes A0- Angelo Salese2011-05-151-1/+1
| | | | | | | | | A3) in the i386 and NEC disassemblers. The argument (the memory address) was being displayed as a signed number, which doesn't make any sense. [Alex Jackson] Fixed a tiny bug with the debugger hex dump command: the printable characters in ASCII range from 32 to 12*6*, not 127. [Alex Jackson]
* Switch to using delegates for some callbacks: Aaron Giles2011-04-271-1/+1
| | | | | | | | | | | | - non-device timer callbacks - machine state changing callbacks - configuration callbacks - per-screen VBLANK callbacks - DRC backend callbacks For the timer case only, I added wrappers for the old-style functions. Over time, drivers should switch to device timers instead, reducing the number of timers that are directly allocated through the scheduler.