adelikat
3bf11dbf68
Fix slow Ctrl+A on Ram Search and Ram Watch, fixes #630
2016-09-21 10:56:57 -04:00
zeromus
a7d2b8d7f7
* add a new IToolForm update mechanism which has extensible update points (so a tool can both pre- and post- update)
...
* make trace logging "core-pushes" model, to a sink installed by the frontend. This sink can go straight to the disk without wasting memory if that's what the Trace Logger tool has selected; or the Trace Logger will buffer it if it needs to. Formerly, we had a "core-pushes-to-buffer" and "client-pulls-once-per-frame" which necessarily caused huge buffers no matter what was going on.
2016-08-13 15:31:26 -05:00
parasyte
71c7edbb24
Add address mask setting for breakpoints
2016-08-08 04:37:39 -07:00
Isotarge
5a20a520bd
Tools: Ram -> RAM #669
2016-07-22 01:32:54 +09:30
zeromus
2f50771494
fix ramwatch popup dialogs not referencing ramwatch as parent
2016-02-17 16:37:53 -06:00
adelikat
51e12040d1
Ram Watch - fix logic that determines whether to show Freeze or Unfreeze in the context menu
2016-01-31 11:55:00 -05:00
adelikat
0013646db5
Rip out obsolete notion of a WatchList domain, change ram watch menu item to Default Domain, who's functionality is simply to decide the default domain used when adding a new watch, also add some Visual Studio designer shenanigans for a previous commit I made that broke it
2016-01-30 22:17:31 -05:00
adelikat
aaf4d39b58
Ram Watch/Search - misc code cleanup
2016-01-30 21:21:17 -05:00
adelikat
6f75ef6dba
Move another function to ToolFormBase
2016-01-30 21:07:03 -05:00
adelikat
894a9c2318
Rework ToolHelpers from a static object to ToolFormBase that inherits form and have a lot of tools inherit it, in hopes of moving a lot of copy pasta into a base class, move a few functions that show up a lot there
2016-01-30 20:24:53 -05:00
Connor Olding
f0c939d87c
reimplement strings for OSD watches
...
also fixed saving separators
2015-12-23 17:18:39 -08:00
Hathor86
a7074c6341
ExternalToolManager and BizHawkExternalToolattribute
...
Add those 2 classes in order to help handling of external tools
- Also fix value setting in watches constructor
- Bugfix in loading externaltools (they loaded multiple times)
- Add new version of Hello World external tool
Whitespaces noise in RamWatch.cs... :s The code hasn't changed
2015-12-13 21:38:35 +01:00
Hathor86
708bb4fa93
Final stuff to WatchList
...
Now fully use comparer class. That saves memory and offer extensibility
ItemCount property obsolete => Moved to Count property (which did the same thing)
Moved ConfigPersistAttribute.cs, IToolForm.cs, IToolFormAutoConfig.cs back to common
2015-12-09 00:54:54 +01:00
adelikat
48487f2a90
Sort out and fix problems with Ram Search watch files showing up in the Ram Watch recent list
2015-12-04 23:18:46 -05:00
Hathor86
32271899c3
Comments on Watch derived class; started on watchlist
...
+ Moved WatchList.cs to specific directory (just a matter of ordering)
+ Mark some properties and methods in watchlist as obsolete
+ Create Comparer class that are used for sorting (Only domain and
address atm, other a still stored with linq). Unlike OrderBy in LINQ, it
doesn't create a new list for sorting (so it saves memory), furthermore,
it runs faster.
Finally, change to type of Watch.Address from nullable lon to regular
long (the rare times watch.Address.Value was used, there wasn't any
check of null and so, program would have crashed -
InvalidOperationException -)
2015-12-01 22:18:55 +01:00
Hathor86
1e2f4e12be
Watch refactoring
...
Some improvement when you get Available types. Used to return a new
array each time you call the function. It has been transformed into an
IEnumrable and yield return.
DisplayType, PreviousType and Watchsize have been moved outside the
Watch Class
2015-11-28 22:52:00 +01:00
Hathor86
d4b4c06f0c
Draft of API
...
So, I create a new dll named BizHawk.Client.ApiHawk and moved few stuff
to it.
Also moved some stuff to BizHawk.Client.Common. Don't think it can be
desiociated.
I started comment Watch and rearrange code (put some #region etc...
It compiles and it seems working :)
2015-11-26 23:05:29 +01:00
zeromus
53eae133e7
fix #537 Annoyance with "always on top"
2015-11-12 17:32:49 -06:00
zeromus
be4af1ec2f
when editing watches, populate the edit dialog with the actual memorydomain of the watch you're editing, instead of mainmemory
2015-11-03 03:24:25 -06:00
zeromus
7e0996b44b
fix Memory watch: Strange rectangle #526
2015-10-18 22:13:41 -05:00
adelikat
6d4dea9a14
Don't attempt to remember tool window size/position if tool is minimized/maximized, this fixes issue #491 but also fixes the bug in every tool (unless there is a tool that does not implement IAutoToolFormConfig that I missed in this changeset)
2015-09-05 17:05:14 -04:00
adelikat
8a4e33981c
Ram Watch - only show the Read/Write breakpoints context menu items if the selected address(es) are on the system bus, and only show if all the criteria to use them are available rather than showing and disabling them.
2015-07-21 22:30:38 -04:00
zeromus
f8497507f7
proof of concept: handle VirtualItemsSelectionRangeChanged on VirtualListView to fix some bugs when shift+clicking. Better fix is to correct all this stuff at the base class level and turn it into a more normalized event that works the way you expect.
2015-07-18 12:32:48 -05:00
scrimpeh
60c3734e8c
Ram Watch - Fix moving up and down blocks of identical Watches
2015-07-05 18:55:43 +02:00
SuuperW
9b8d2f70ab
Various fixes
2015-03-22 16:55:34 +00:00
scepheo
714f4a9687
RAM Watch: Added read/write breakpoint setting to context menu.
2015-02-08 17:39:59 +00:00
adelikat
f547dfbb21
some fixes to last commit
2015-01-27 02:53:57 +00:00
adelikat
bb2cd1b476
Ram Watch - support copy and paste (generates and receives the same text as would be in a .wch file)
2015-01-27 02:37:18 +00:00
adelikat
e51ffd95d8
Ram Watch/Search - disable poke and freeze toolbar items based on writability of a domain, also smarter enabling/disabling of them in general
2015-01-25 16:07:15 +00:00
adelikat
71d7c2537a
Ram Watch/Search - also disable freezing if a domain is not writable
2015-01-25 15:15:56 +00:00
adelikat
7ed8704555
add a CanPoke() extension method for memory domains, checks for a null or not implemented Poke Poke delegate, use it to disable Poke on Ram Search and Ram Watch, still todo - hex editor and lua
2015-01-25 14:37:37 +00:00
adelikat
515a41592c
Convert a whole bunch of ram stuff from int to long
2015-01-18 18:59:23 +00:00
adelikat
6507fa5d92
Hex Editor - convert addresses from int to long, fixes Go to address on 32bit domains, highlighting on addresses after 7FFFFFFF is still busted though
2015-01-18 18:01:27 +00:00
adelikat
fbdb29b64c
refactor IMemorydomains to be a domain list instead of having a domain property, refactor cores to register an IMemoryDomains instead of being one
2015-01-14 21:55:48 +00:00
adelikat
38c1ffa1e9
Fix autoloading of Ram Watch
2015-01-02 15:19:18 +00:00
adelikat
47d1e480da
Ram Watch - a null check
2015-01-02 14:40:18 +00:00
adelikat
31823693ae
Cheats, Ram Watch - Fix bugs in column hide/show in new system
2015-01-01 01:21:06 +00:00
adelikat
6440c9c44b
Ram Watch - convert to ConfigPersist, and do column stuff the new way
2015-01-01 00:47:22 +00:00
adelikat
fd28a593f6
Ram Watch - add a null check on Restart()
2014-12-22 00:59:39 +00:00
goyuken
78ea103114
ramwatch fix
2014-12-21 21:43:03 +00:00
goyuken
ea47246658
remove the IEmulator inheritance from some services, and fix code as needed
2014-12-15 22:25:06 +00:00
goyuken
7b580e7dca
tim the tool form taylor
2014-12-15 03:19:23 +00:00
adelikat
3af65a6498
removed some deletable code I missed
2014-12-14 01:42:05 +00:00
adelikat
8eda262ebe
convert Ram Watch and Hex Editor to use EmulatorServices
2014-12-13 22:54:07 +00:00
scepheo
769cbeb1a0
- IToolForm: Added RequiredServices attribute to define dependencies, and added EmulatorServices for ToolManager to supply them.
...
- IServiceProvider, BasicServiceProvider: Added compile-time unknown type versions of GetService and HasService.
- ToolManager: Added IsAvailable to test whether all dependencies for a tool are available.
2014-12-13 21:54:59 +00:00
goyuken
0b16e36776
fix issue 330
2014-11-29 18:57:57 +00:00
adelikat
e6e2972e3d
Make IMemoryDomains inherit IEmulator and simplify some code slightly as a result
2014-11-23 16:03:04 +00:00
zeromus
200d11df62
cleanup ramwatch during rom loads for other platforms a bit. should fix #285 . the whole concept of ramwatch when loading other platforms needs some help though (the current watches mutate into some format senseless for the new platform)
2014-10-11 19:49:22 +00:00
adelikat
f4d3b70469
Ram Watch - fix issue with stale memory domains when rebooting a core, some cores were unaffected, cores like atari 2600 were affected by this bug
2014-09-28 16:39:53 +00:00
adelikat
5ba74c631c
Remove MemoryDomains from IEmulator into a new Interface, IMemoryDomains, Add this interface to existing cores, except null emulator (and removed memory domain related code from it). Refactored EmuHawk for ram tools to use an instance of IMemoryDomains rather than IEmulator, don't expose ram tools unless the core implements IMemoryDomains. Still a few misc todos, and probably some cleanup
2014-09-01 18:43:41 +00:00