Commit Graph

613 Commits

Author SHA1 Message Date
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
rolanmen1 3bcaa8f2e6 gui.clearGraphics implemented. This will allow the user to clear the graphics whenever he wants. I also created a function ClearDisplaySurface that is used to clear the graphics whenever the user stops a scripts. 2012-04-27 20:15:07 +00:00
Rolanmen1 f637f5f400 gui.text now has a line color parameter. 2012-04-24 15:23:56 +00:00
rolanmen1 cefc803425 gui.text now accepts BackgroundColor parameter. I didn't had enough time to check stuff, so i will check more deeply some other time. 2012-04-24 03:57:23 +00:00
adelikat 8711c49819 Cheats - on screen message when Disable All Cheats is performed. 2012-04-21 22:42:32 +00:00
adelikat 3bae8da0b6 Adjustment to height settings of osd messages, code clean up in movie.cs 2012-04-16 12:17:25 +00:00
zeromus 35fbe354c1 add threaded display manager to allow heavy OSD/compositing/filtering to happen on another thread. add a lua layer accessible via GDI+ which can be automatically composited and the simplest possible demo of it. add some filtering infrastructure and a hq2x filter set ported to c# but need to work on a minimal selector gui before its usable. separate OSD from RenderPanel so that gdi+ presentation mode now gets full OSD support. the OSD is now a little uglier because its drawn entirely differently and could use some finetuning 2012-04-16 08:18:41 +00:00
adelikat 87fa6d5f17 Hex Editor - Context menu - fix "Add to Ram Watch" hotkey display to be Ctrl+W (was left as A) 2012-04-06 02:04:00 +00:00
adelikat 59f92b4c81 TAStudio - atari virtualpads 2012-04-01 18:53:06 +00:00
adelikat ab2e804300 Change default movie extension to .bkm 2012-03-31 00:38:39 +00:00
brandman211 4240c119b6 Fixed Issue 14, which mentioned that in TAStudio, frame numbers of more than 5 digits don't display properly by default. I fixed this by increasing the width of the Frame column as much as I could without making the section horizontally scroll. This accommodates for 6 digits. 2012-03-30 14:24:40 +00:00
Rolanmen1 e0d98c8a7f Fixed: * if a lua script errors it stops, but you can't toggle it back because you can't resume a non-suspended script 2012-03-29 20:22:49 +00:00
andres.delikat ca7d5d9131 Lua Console - add online documentation link to the Lua Function wiki 2012-03-28 20:49:58 +00:00
adelikat 71396ad4b7 Lua - sort the functions in the lua function list (both in the console dialog, and console.luafunctionslist()) 2012-03-28 12:26:43 +00:00
rolanmen1 3e84fc9936 Lua - Implemented movie.getinput()
NOTE: There may be uknown errors.
2012-03-27 15:45:50 +00:00
rolanmen1 5e25b15100 Lua Console - Save Menu Option Now Enables Even When There's No Session Loaded
ListView Refreshes When Loading A Session From Recent
When Clicking On New Lua Session Option, It Now Cleans The CurrentLuaSession String. This Will Prevent Some Unwanted Results When Saving A Session.
2012-03-27 13:54:29 +00:00
rolanmen1 5337fb2213 Lua Console Now Saves And Loads Sessions With Separators 2012-03-27 13:31:30 +00:00
brandman211 9ff5f10a70 Resolving Issue 13. Easy fix; just needed to check if the string was empty before doing substring operations on it. 2012-03-27 07:48:05 +00:00
zeromus 46a638ee96 fix bug in lua coroutines which made error propagation get mixed up and possibly result in a bunch of other subtle bugs 2012-03-27 07:25:36 +00:00
rolanmen1 36c4dee7b8 Show Errors On Lua In The Output Box More Accurately 2012-03-27 03:34:21 +00:00
adelikat f145d8e655 Cheat Window, Ram Watc, Lua Console - fix exception when clicking Move Up on the first item in the list. 2012-03-26 23:38:29 +00:00
adelikat 602ee06ffc Lua Cosnole - output message at bottom of dialog to show if changes have occured and saved messages (same as other tool dialogs such as ram watch). Better minimize size parameters of dialog. 2012-03-26 23:31:21 +00:00
rolanmen1 908a9a11c5 Lua Console - Save Session Menu Option Should Now Enable/Disable Correctly. Also Added The Condition That There Should Be At Least One Script To Be Able To Save. 2012-03-26 13:46:28 +00:00
rolanmen1 e2e3ee3301 Loading A Script With Errors Via Load Lua File Now Disables And Shows Error In Output Box. Toggling On A Script With Errors Disables Itself Right Away. 2012-03-26 08:52:06 +00:00
adelikat 7daf318134 gui.text() - add a 5th parameters "anchor" that will anchor the text to top, left, bottom, or right. Same functionality as the message config anchor option. 2012-03-26 02:58:24 +00:00
adelikat f72fce15fd Lua Console - fix anchoring properties 2012-03-26 01:41:39 +00:00
rolanmen1 5283b4c06c Avoid Crashing After Trying To Delete A Script With Errors. 2012-03-25 15:34:09 +00:00
rolanmen1 35f42b94f3 Dragging A Lua Session Now Works. Script Errors From Dragging Sessions Now Appears In The Output Box. 2012-03-25 14:51:35 +00:00
rolanmen1 75c0a9f7d3 Script Errors Now Appears In OutputBox. 2012-03-25 09:47:31 +00:00
Rolanmen1 e9e988a83e When Loading An Script With An Error, BizHawk Won't Crash. For Some Reason I Couldn't Show The Script Error In The OutputBox. 2012-03-24 21:55:37 +00:00
Rolanmen1 d0afec182f Pause/Resuming Scripts Have Been Implemented 2012-03-24 18:59:24 +00:00
rolanmen1 d0995970fc User Can't Toggle, Edit Nor Pause Or Resume To Separators. Edit Buttons Now Opens Multiple Scripts Instead Of The First Selected. 2012-03-24 13:25:19 +00:00
rolanmen1 87f9ace0d9 Added Resume/Pause Script Option Everwhere It Should Be And Also Added Pause Icon To All Of Them. 2012-03-24 12:43:11 +00:00
rolanmen1 661565cf3e Added Pause Property To Scripts, Menu Option To Pause/Resume Scripts, Enabled And Paused Scripts Change It's Background To Red (May need to change this). Label Above ListView Shows How Many Scripts Are Paused. Need To Add Pause Icon To The Menu Option. 2012-03-24 10:53:26 +00:00
zeromus 5f39ba5bbd add emu.yield, which when used allows a script to run while emulation is paused and interact with the gui/main window in realtime 2012-03-23 23:03:39 +00:00
zeromus aaf92e0e25 how did that happen 2012-03-23 19:48:45 +00:00
zeromus bc3e8606a2 refactor lua scripts to be more flexible 2012-03-23 19:44:47 +00:00
zeromus 0372969f13 change lua to use lua coroutines for multiple scripts instead of .net threads 2012-03-23 18:24:29 +00:00
rolanmen1 dcaf724dae Fixed A Bug When Saving A Session That Prevented Them To Be Loaded Correctly. 2012-03-21 12:51:52 +00:00
andres.delikat bb7e320f92 Lua Console - when opening a duplicate lua script, don't turn script on if the disable lua script on load option is checked 2012-03-20 21:44:34 +00:00
rolanmen1 652fea7392 If User Opens A Script That Is Currently On The Session, It Will Toggle It On.
If User Deletes The Script From The Session, It Will Stop.
Script Counter Now Updates On More Circumstances.
2012-03-20 15:31:06 +00:00
andres.delikat da634a45f1 Lua Console - autoload session 2012-03-19 16:49:47 +00:00
andres.delikat 33383b533b Lua Console - option to disable scripts on load 2012-03-19 16:19:31 +00:00
andres.delikat adda412369 Lua Console - track changes on Move Up / Down 2012-03-19 15:33:38 +00:00
andres.delikat 40b057a474 Lua Console - drag & drop .txt files 2012-03-19 15:26:05 +00:00
andres.delikat 9f6420b2bc Lua Console - Open Script - add a *.txt option in the openfile dialog 2012-03-19 15:23:08 +00:00
zeromus d0354fd1fe fix lua poop 2012-03-17 23:40:30 +00:00
adelikat 338f4230f1 Lua Console - logic for hiding/disabling menu items 2012-03-17 23:16:11 +00:00
adelikat 300f68e8b7 Lua Console - implementing changes tracking and asking to save changes 2012-03-17 22:23:52 +00:00
adelikat 97f32bde91 Lua Console - implement recent session 2012-03-17 21:59:56 +00:00
adelikat 44ba1c2594 Lua Console - implement Save Session and Save Session As 2012-03-17 21:31:48 +00:00
adelikat c3aeda2d54 Lua Console - clear output window on New Session 2012-03-17 12:19:30 +00:00
adelikat 1380cccd7a Lua Console - output window - context menu with a clear option 2012-03-17 12:14:59 +00:00
adelikat dac438ec02 Lua Console - Better dialog for lua functions list, stop and start sound on calling list 2012-03-17 02:18:09 +00:00
Rolanmen1 a8df8116e6 Toggling Lua Scripts By Double Clicking Now Works 2012-03-13 22:39:07 +00:00