Commit Graph

567 Commits

Author SHA1 Message Date
zeromus c7925d986c delete display manager threading. fix gdi+ leaks in lua code. add abstracted OSD drawing "blitter" system for sysdrawing/d3d dual compatibility and framework for future use for faster lua drawing. 2012-06-10 23:27:30 +00:00
adelikat 2574789564 Hex Editor - color picker not modal, move "nibble" display lower to not clash with underline 2012-06-10 22:54:41 +00:00
pasky1382 7ef1151b99 Added a 'Custom Colors' Dialog for the Hex editor tool. 2012-06-10 22:43:43 +00:00
brandman211 7d23581764 Set lastchange to Value in Watch's explicit value constructor to match the change to prev. 2012-06-10 19:33:11 +00:00
adelikat a2a98415bf Ram Watch - show initial value of a watch when it is initially added (from adding it or loading a file). Fixes issue 74 2012-06-10 17:45:20 +00:00
adelikat 81198cc89f Hex Editor - add a save as binary option (in addition to the text option) 2012-06-10 17:28:38 +00:00
adelikat bac863aa70 Hex Editor - add Copy/Paste functions 2012-06-10 16:34:35 +00:00
brandman211 646a6c1c58 -Fixed my GetMnemonic crash fix. It's "Null Controller", not "NULL Controller".
-Made it so that each new search zeroes out the change count.
--This prevents all non-zero items from starting out with 1 change.
--A similar fix needs to be applied to Ram Watch (Filing issue...).
-Allowed changing data size, endian, and unaligned address setting in the middle of the search and maintaining valid values, fixing Issue 72 (The last open Ram Search issue until my "Difference" idea is hopefully accepted).
--Unlike my previous model, this does not align unaligned addresses; all it does is change the size / endian and PeekAddress.
--It does remove unaligned addresses, however, if you have it set to.
--This version converts System Bus instantly whereas the previous version stopped responding.
2012-06-10 04:32:25 +00:00
adelikat 3451d3391e Refactor readword/dword similarly to Ram Search 2012-06-09 22:56:08 +00:00
adelikat e025ca99bf Hex Editor - Find - start searching from highlighted value so that multiple find calls go to the next value. Show highlighted value in input box by default. 2012-06-09 22:45:24 +00:00
brandman211 2580489986 Refactored previous parameter in CompareTo and ComparePrevious from strings to enums. 2012-06-09 22:10:39 +00:00
adelikat b2c9171b90 Hex Editor - Find option, allows you to enter a series of hex values and search ram for this combination 2012-06-09 22:04:09 +00:00
adelikat c0d5437ff4 Ram Watch - revert "fix" to watch count display, make watch list count update in appropriate places, don't count separators in watch count, fix cosmetically be showing "watch" instead of "watches" when there is 1 address 2012-06-09 21:57:00 +00:00
brandman211 376ffd3ba4 -Refactored what zeromus wanted me to and nothing more.
-The number of watches in Ram Watch is now updated in UpdateValues instead of LoadWatchFile, meaning that it's updated every time items are added / removed.
--Also noticed that separators count as watches. Filter these out and exclude them from the count, adelikat?
2012-06-09 21:43:02 +00:00
adelikat 14b5a4204b Ram Search - specific value box - only show hex in uppercase 2012-06-09 16:37:03 +00:00
adelikat 0eae1a07fc Watches - cleanup PeekAddress() some 2012-06-09 14:18:28 +00:00
zeromus 1fbf9940c9 make peek/poke word/dword make some semblance of sense 2012-06-09 08:44:27 +00:00
brandman211 1c5a5a5ac3 Seemingly fixed the casting problem.
-UGLY REDUNDANT UGLY REDUNT UGLY REDUNDANT (Especially for DoSpecificValue() and DoPreviousValue()).
-I tested every possible scenario for the aforementioned abomination and it seems to work.
-I applied SignedVal and UnsignedVal to the comparison functions for sorting, the ToString functions, and specific value and previous weedings. I don't think there's any other places where this is an issue.

TODO:
-Try my mid-search data size conversion code again.
--Use it on System Bus and see if it is as slow (Not Responding) as it was previously now that 3 lists have been removed.
--Try allowing unaligned addresses and see if that makes any difference.
-Convince adelikat that moving "Prev value as change" to its own data item and column ("Differences" seems more appropriate) is the only sensible way.
-Maybe move all of the previous definitions from Ram Search to Ram Watch (With the exception of "Since last Search" of course.
-Perhaps allow the viewing / hiding of more columns on Ram Watch / Search.
2012-06-09 08:29:31 +00:00
brandman211 06d4017b07 Unsigned / signed conversion for the Specific Value now works for word / dword.
-Well, dword is broken in general because of casting, which will hopefully be fixed soon...
2012-06-09 06:52:04 +00:00
brandman211 720193b50f -Cleared the sorted column whenever the previous definition, data size, data type, or endian changes because these options might place the values out of order.
--Well, data size and endian don't, but they will once these changes take effect in the middle of a search.
-Previous can now be defined as the last change, fixing the enhancement shown in Issue 73 (Ram Watch equivalent might come later).
-Fixed unsigned sort.
2012-06-09 06:40:11 +00:00
adelikat f02d28fb38 Ram Search/Watch, Hex Editor - improve some code efficiency, tiny speedups if any 2012-06-09 05:34:01 +00:00
brandman211 3b54bd268a -Useful refactoring!
--prevList, undoPrevList, and redoPrevList removed. All of the definitions for previous are now stored in separate data items.
---Should yield small speed increases.
---Makes it easier to port these definitions to Ram Watch eventually.
---Auto-aligns data, making it impossible for issues, such as the original values not aligning with the correct values because the prevList wasn't recreated, impossible.
---Makes it possible for the field to automatically update when the definition is changed (Implemented).
--Value/PrevToString() now use the same code.
--Reduces redundancy.
---This was a problem as PrevToString wasn't taking into account the data type, whereas Value was. This is now fixed.
-Watch now stores the data for the "last change" previous definition. Now I just have to set up the option in the GUI.
2012-06-09 01:56:56 +00:00
brandman211 eefb41f0b3 -Added message saying that the data type has been converted when you change the data type.
-Moved the "Included mis-aligned" box to data size where it should be.
2012-06-08 18:59:20 +00:00
brandman211 e5972f1368 Fixed Issue 44. I created two new lists, undoPrevList and redoPrevList which are updated / restored in the same places as their counterparts with prevList instead of searchList. 2012-06-08 06:23:33 +00:00
brandman211 3aaf57802c Fixed Issue 43. In hindsight, the problem was very obvious: "Since last frame" uses searchList while the other options use prevList, and only the former ever got sorted! 2012-06-08 05:15:07 +00:00
brandman211 4a6fed75d9 ConvertListDataType now converts all of the lists. 2012-06-08 02:25:24 +00:00
brandman211 67a9f86c78 -Fixed GetSpecificValue(), which means that signed searching works now.
-Upon changing data type, the contents of the specific value box converts accordingly.
2012-06-07 23:17:22 +00:00
brandman211 38d22b8549 Exlude => Exclude. >_< 2012-06-07 20:24:29 +00:00
brandman211 5a678f96d8 Fixed Issue 69 by properly chucking the invalid lines out of watch files instead of trying to get out of range substrings and parsing non-numbers as integers. Also, as the newly stored SystemID has yet to be accounted for in any way, I made the parser skip those lines. Not sure if there's something Ram Watch should do with this data as it seems like the SystemID is more accurately defined by the core currently running. 2012-06-07 18:41:39 +00:00
phillip.grimsrud cb4c45eb70 1. Upgraded insert and delete functions in tastudio to support multiple selection.
2. Fixed issues with the light blue current frame pointer in tastudio
3. Removed a totally useless index that was being kept seperately in the movie log.
4. Moved the tastudio update after the check to see if the rest of the saved state list is valid.
5. Changed some function/variable names related to the movie log for clarity.
2012-06-07 04:47:54 +00:00
adelikat 93b266838c Add drag & drop for lua and luases files to main window. Allow multiple lua script drop to console and main window 2012-06-07 03:41:45 +00:00
adelikat c8d07a5078 Ram Watch/Search - add System ID to .wch files 2012-06-07 03:16:25 +00:00
phillip.grimsrud c7db5fd543 1. Fixed an issue that prevented going into the movie finished state properly.
2. Relegated a memory leak to tastudio.
2012-06-03 04:04:13 +00:00
adelikat 8ca6b24614 Cheats, Lua, Ram Search/Watch - flag changes when adding a separator, default to SaveAs if saving a new file, allow Save in menu item in this scenario 2012-06-02 22:06:00 +00:00
adelikat 393dd9dcfe Ram Watch/Search, Hex Editor - set endian based on the endianness of the memory domain by default 2012-06-02 21:48:09 +00:00
adelikat 0a0c4b43ae Hex Editor - add Go to Address to the context menu 2012-06-02 21:18:21 +00:00
adelikat a74fbb84fe Fix Ram Poke for Ram Watch/Search dialogs 2012-06-02 21:07:29 +00:00
adelikat 6578371bca Hex Editor - remove poke context menu item, since there is no need for it, just type in the values! 2012-06-02 18:49:06 +00:00
adelikat 2e5547806d Ram Search - add View In Hex Editor menu item to the context menu 2012-06-02 14:38:35 +00:00
phillip.grimsrud d6479e5613 These changes are TAStudio related.
1. Added a list of save states to the movie log.
2. Added corresponding support functions for the save states.
3. Added double click to the list view to load a previous frame.
4. Added a context menu to the list view with insert and delete.
5. Fixed some issues with the green zone of valid state history.
6. Fixed an input bug that I had unwittingly created, as well as issues with the nes log format.
2012-06-01 05:49:26 +00:00
phillip.grimsrud bf325ec082 Fixed TAStudio read-only mode button to change the movie mode instead of changing the read-only flag which has a different meaning. 2012-05-28 01:50:16 +00:00
phillip.grimsrud fc0ec832ae These changes are for TAStudio upgrades. If I've broken other stuff please yell at me.
1. Hooked up Fast Forward, Fast Forward to End
2. Made a placeholder for Turbo Fast Forward.
3. Fixed rewind to not stomp on the previous frame with new input.
4. Fixed rewind to stop at the beginning of the movie instead of freaking out.
5. TAStudio now shows data from the most recent frame.
6. CommitFrame is called even if not recording so played back frames also show up in TAStudio.
7. Play mode only stops at the end of the movie if you tell it to. Your emulator normally continues to play with no input after the end of the movie.
8. TAStudio is now updated after a rewind (even though the rewind doesn't play a new frame).
9. Split the tools update into before and after updates.
10. Going into read-only mode adjusts the movie mode.
11. Implemented New, Open, Save, and Save As for TAStudio.
12. Fixed an issue where frames past the end of the log would default to the input from the last frame of the log.
13. Fixed a problem where you couldn't rewind to frame 0.
14. Fixed a scrolling issue in the TAStudio list view.
15. Fixed an issue with the TAStudio virtual NES controller not matching up with the log.
16. Fixed an issue where the NES reset button would get held in when rewinding.
17. Added/Modified a couple of button graphics.
2012-05-28 00:44:27 +00:00
adelikat b08d338761 Gameboy - make debugger useful by connecting it to the multiclient events 2012-05-19 13:33:45 +00:00
brandman211 7ab8fe087a Fixed drop down labels in RAM Watch and Search. 2012-05-12 07:07:34 +00:00
zeromus 857d0a5b39 voila, "emu" resolution lua drawing, hacked in place of the native resolution drawing because rolanmen1 decided to destroy my surface management paradigms (i can tell because the earth is scorched with spaces instead of tabs) 2012-05-06 07:09:04 +00:00
Rolanmen1 9b9a8546a5 Deleted the ClearDisplaySurface functions. If you just need to clear the graphics, call gui_ClearGraphics function in LuaImplementation. 2012-05-01 15:15:19 +00:00
Rolanmen1 2799d55f4a Now gui.drawNew and gui.drawFinish doesn't need to be invoked via Lua Scripts. However they are invoked every frame. Basically, this means that graphics are drawn and cleaned every frame. So, if you Pause/Stop a script, the graphics gets cleaned right away. 2012-05-01 14:43:17 +00:00
adelikat 54d1c873df Fix when guitext gets cleared, reduces most of the flickering and inconsistencies with ram watch on screen and lua gui.text, fix punchoutstats lua script 2012-04-30 01:14:23 +00:00
adelikat 25c2e45da8 movies - use Global.Game.System not Global.Emulator.SystemId for the System header when recording a new movie 2012-04-29 14:18:10 +00:00
adelikat 5e91cc2a7e TAStudio - clear holds menu item & context menu item, clears all buttons pressed on the virtual pads 2012-04-29 13:25:35 +00:00