Commit Graph

118 Commits

Author SHA1 Message Date
adelikat cc1867326a Ram Search - fix "Exclude Ram Watch" option 2016-01-31 19:28:25 -05:00
adelikat ab16e9238b Drop support for pre-1.0.5 ram watch files, I think it is safe to do this by now 2016-01-30 22:19:32 -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
Hathor86 da25052e09 Just few comments on above notwa's method :)
(Oh and transform string concatenation with + to a string.Format)
Also made a small fix to externaltoolmanager
2015-12-24 14:00:08 +01: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 21e25555d0 BytWatch ValueString property fix
Call GetByte() instead of _value field (like other watches)
2015-12-10 10:25:45 +01:00
Hathor86 7779b2f7db Fix RamSearch value
Fix has been done on constructor of each watch. Call GetByte / Word /
DWord if value is 0.
It ensure that previous passed in parameters remains unchanged
2015-12-10 00:34:07 +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 31cc08a954 More WatchList comments
Finished coments on WatchList object
2015-12-02 22:48:30 +01: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 ee860fd820 Quick fix of save watch
Wrong ToString() method was called when writing
Reading was ok
2015-11-30 18:27:55 +01:00
Hathor86 e7de250fb2 Comments on ByteWatch
Also moved nullable value type to non nullable (with exception
prevention).
2015-11-29 17:13:32 +01:00
Hathor86 01639c3e10 Watch comparaison interfaces implementation
Watch now implements IEquatable<Watch>, IEquatable<Cheat>,
IComparable<Watch>
Operators had also been overloaded. You can now put watches from SAME
domain in a list and easly sort them.
Sorting is based on address first then size.
2015-11-29 13:46:50 +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 565f19fc83 Watch: Comments & reordering
Just comments some methods and reordering them
2015-11-27 13:43:49 +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 6f71956faa add lousy logic to fix cheat compares 2015-11-15 18:22:12 -06:00
zeromus 5402f1ff9e dont reorder cheats list when editing cheats 2015-08-04 22:25:58 -05:00
pjgat09 c829887f00 Ram search: fix equal/not equal for float searches 2015-03-21 00:13:53 +00:00
adelikat 36f4eff0f6 add ByteSize to MemoryDomain with a default of 1, set it to not 1 on appropriate domains (I probably missed some, or got some wrong). Have RamSearch use that instead of SystemInfo, remove ByteSize from SystemInfo since it is no longer needed 2015-02-22 15:19:38 +00:00
adelikat 8371c23830 WatchList - use the new watch to string method, did not wire up the from string, since the load code while very poorly coded, both works and supports legacy formats including older rerecording emulators 2015-01-27 02:55:31 +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
zeromus 2a1f40982c dont know how valuable it will be, but just in case.. 16.16 fixed point support 2015-01-22 01:24:20 +00:00
adelikat 4c47ef2f3f Watch.cs - an remove an int cast I missed when converting domain size to long 2015-01-19 02:58:18 +00:00
adelikat 515a41592c Convert a whole bunch of ram stuff from int to long 2015-01-18 18:59:23 +00:00
adelikat 91ffc17aae Refacotor MemoryDomain.Size to be long instead of int, still some small todos, but it compiles and seems to work 2015-01-18 15:25:47 +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 3c83911c4f Ram Search - don't allow undo to the original list, a user can easily start a new search to get to that state, and allowing it means undo already starts out with a full list eating a lot of RAM for no benefit 2015-01-02 22:18:53 +00:00
scepheo 14e2b280ac Removed reference to Global.Emulator from RamSearchEngine. 2014-12-16 01:50:22 +00:00
scepheo 77be509e44 RAM Search: Implement previous type "last change". Fixes issue 331. 2014-12-16 01:19:29 +00:00
scepheo 528b7ea104 RAM Search: Fix issues with signed values. Resolves issue 340. 2014-12-16 00:41:47 +00:00
scepheo 53ea2caeac ^Really^ fix cheats not working (forgot WordWatch & DWordWatch) 2014-12-15 23:57:56 +00:00
goyuken ea47246658 remove the IEmulator inheritance from some services, and fix code as needed 2014-12-15 22:25:06 +00:00
scepheo 5179a3379f Fixed cheats not working. 2014-12-14 01:51:55 +00:00
adelikat 04f9081943 in IEmulator extensions add methods such as AsMemoryDomains(), AsStatable() that do the service calling magic. In the client code replace appplicable casts of IMemoryDomains with AsMemoryDomains(), more commits of this nature for the other IEmulatorServices soon to follow 2014-12-05 00:32:29 +00:00
adelikat fdc9ea2aa9 fix issue 326 - Ram Watch, Ram Search showing actual value instead of frozen value on frozen addresses 2014-11-29 00:45:38 +00:00
adelikat 7c83b91e83 Ram Watch - fix a bug where loading a watch file with separators would throw a null reference exception 2014-11-29 00:28:48 +00:00
adelikat e6e2972e3d Make IMemoryDomains inherit IEmulator and simplify some code slightly as a result 2014-11-23 16:03:04 +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 1dc789eb02 Ram Tools - support poking frozen values, fixes issue 266 2014-09-27 21:52:15 +00:00
zeromus 87e9d235f6 make some effort to support memdomain of full 32bits size, and use it for n64 system bus. make sure to check that its disabled in ramsearch engine and in hex editor. we could probably fix it to work in hex editor later. 2014-09-09 21:34:41 +00:00
zeromus ea1387c339 fix signed comparisons probably broken by last commit 2014-09-07 06:33:21 +00:00
zeromus c829183fa7 fix handling of sign extension and longs in ramsearch engine. fixes observed misbehaviours in n64 ramsearching. not tested real well, but definitely a needed improvement 2014-09-07 06:17:10 +00:00
adelikat d003be9cda remove some todos, I decided not to do any of them, it is too pedantic to do them 2014-09-01 19:07:05 +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
adelikat db0dd17676 Hex Editor - fix wrapping logic when incrementing/decrementing frozen addresses 2014-08-16 14:44:40 +00:00
adelikat 9cfb30093a Ram Watch/Ram Search - Fix freezing of float values as well as some other types 2014-08-02 01:54:07 +00:00