Commit Graph

1556 Commits

Author SHA1 Message Date
feos 07d4ac846b lua: memory.GetMemoryDomainSize()
fix #542
2016-02-09 17:54:11 +03:00
zeromus 97998071a7 fix bugs in lua's memorysavestate apis (fixes #565) 2016-02-08 01:28:26 -06:00
Adam Sturge 5dc31d3eb9 Fixed index bug for comparison type in Load() in CheatList 2016-02-07 21:54:45 -08:00
Adam Sturge 52c587d712 Save/Load cheats now accounts for comparison type column 2016-02-07 21:40:14 -08:00
Adam Sturge 992acd9e96 Added code to sort by comparison type. Added code to compare based on comparison type selected 2016-02-07 20:56:40 -08:00
adelikat 36b82c3563 Lua Console - add a button that installs auto-complete for all bizhawk's lua library to Sublime Text 2's lua syntax, still todo - notepad++ 2016-02-07 08:27:57 -05:00
adelikat 487fce328b Lua - add option to detect changes in scripts and automatically reload them. Have this option off by default for now. Also fix reloading of scripts which was recently broken. 2016-02-06 13:50:02 -05:00
Adam Sturge f19333dd11 Prettied up display of comparison type in cheats table 2016-02-05 20:33:21 -08:00
Adam Sturge 092b5da974 restored [ConfigPerist]. 2016-02-05 19:33:31 -08:00
adelikat 7885934a1e Add a global tools path in path config, have various tool related paths fallback to this tools folder, wire it up to hex editor .tbl files and basic bot .bot files. Change various tool paths to be . by default to point to the tools folder instead. Add tools folder to version control and builds 2016-02-05 20:46:18 -05:00
Adam Sturge 9959d61949 Added comparison type dropdown. Updated Cheat model to contain reference to comparison type 2016-02-02 20:32:46 -08:00
adelikat 8168031bed Make TargetZoomFactor a per systemId setting 2016-01-31 21:05:08 -05:00
zeromus 5e89e563d0 overhaul lua sandboxing so that each lua script has its own sandbox. elaborate tracking of winform/event ownership to ensure that lua doesnt receive calls without going through the owner's sandbox. add win32-specific speed hacks for currdir set/get at higher speed. There may be bugs in this commit, but I think we're on the right track now. 2016-01-31 19:54:55 -06:00
adelikat c510e13d82 Add an IsSGMode flag for SG-1000 when recording a new movie 2016-01-31 19:53:04 -05:00
adelikat cc1867326a Ram Search - fix "Exclude Ram Watch" option 2016-01-31 19:28:25 -05:00
zeromus 42c0b62261 fix some lua currdir bugs, but its all broken, dont pay any attention to it 2016-01-31 03:18:34 -06:00
zeromus da865e28b8 try sandboxing currenty directory harder 2016-01-31 02:40:48 -06: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
adelikat 5ddd9e097b clean up some warnings 2016-01-30 21:28:49 -05:00
zeromus 0da6e745e5 move EnvironmentSandbox and LuaSandbox to Client.Common 2016-01-30 18:37:30 -06:00
zeromus b0ab66801f Revert "comment out feos' sandbox change so things compile"
This reverts commit 418eed6cc5.
2016-01-30 18:28:51 -06:00
adelikat 418eed6cc5 comment out feos' sandbox change so things compile 2016-01-30 18:10:23 -05:00
adelikat ca3b43973c Load Lua session - when loading a relative path, drop the .\ part, I'm disappointed in Path.Combine 2016-01-30 18:08:54 -05:00
feos 7409a32658 lua: attempt to use sandbox in callbacks. 2016-01-30 23:26:27 +03:00
feos c641d94e05 lua: movie.save
see #384
2016-01-30 16:10:28 +03:00
feos a821fce6c8 typo 2016-01-30 16:10:27 +03:00
feos 7421bd7244 lua docs derp 2016-01-27 17:06:22 +03:00
feos 3c779a897b lua: emu.setislagged() 2016-01-27 16:41:41 +03:00
feos 1b8ef3738a tastudio:
- history form: canonical colors, show the current item better, report marker operations
- markers: adding markers updates dialog, don't ever remove marker 0
- tsm: attempt to fix exception in AllLag()
2016-01-27 12:53:26 +03:00
zeromus a355f78631 don't load entire inputlog into a string when parking it in a savestate 2016-01-10 23:08:13 -06:00
zeromus e1ddb51826 fix off-by-one-too-short-inputlog bug in MoviesOnDisk mode 2016-01-10 22:45:43 -06:00
Hathor86 f0ab9edc10 Attempt to fix OutOfMemory when saving states (I guess it works)
Just add an EnsureCapacity() before appending log.
I didn't have any crash yet compare to current release. Let's hope!
2016-01-03 00:52:37 +01:00
zeromus 2765961984 load NSF without annoyance 2015-12-31 12:37:48 -06: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
feos c1e70077c8 instafix #546 2015-12-13 00:00:22 +03: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
feos 2a6a2a7a8a tastudio: properly report saving progress.
also attempt to report seeking progress.
report occurs, but progressbar doesn't show up...
2015-12-10 01:38:06 +03: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
feos 8a6ddfbf3f tastudio: actually use initial state from anchored movies.
don't seek to whatever frame such a movie was created from.
2015-12-08 23:38:00 +03:00
feos 9d491d9415 Bk2Movie: use intended method when adding a key.
fixes #520
2015-12-08 19:17:45 +03:00
feos 33fd1d86ea welp 2015-12-05 17:07:57 +03:00
feos abd118253f tastudio: Save State hotkeys (finally) control branches:
- save/load by slot number (select that branch if it exists)
- save/load current slot (selected branch)
- select branch by slot number
- select next/previous branch
- bind 2 default tastudio hotkeys
keep selection when branch gets removed.
2015-12-05 17:07:24 +03:00
feos d0772a6b44 reduce default binding repetition.
add tastudio hotkeys and tip.
2015-12-05 14:48:04 +03:00
feos 6d4c5ef17f preparations for state hotkeys functioning with tastudio branches.
typos.
2015-12-05 14:48:04 +03: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
feos 3c07f7e649 lua: optional domain for memory functions.
fixes #538.

I tested heavy memory reading, and it's not adding noticeable overhead.
2015-11-29 22:56:28 +03:00
feos eb41e8a8e0 lua: remove registered functions on toggle option. 2015-11-29 22:56:28 +03: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
feos 128c09e7b4 progress with lua:
- added fceux and gens/snes9x pixelated fonts
- added gui.pixelFont() function for them (no resizing, so perfectly scalable)
- added background to drawText and pixelText (halo was painfully slow, so just a box)
- reordered fore and back colors for gui.text (no need to specify back every time we want to change fore). thought its back color was shadow, that is obsoleted by halo now, whose color we can't change. anyway, it's way slower than simple text functions, so they should be used mostly.
- option to toggle all scripts if none is selected. greatly reduces routine when heavily tweaking a script, and is just generally pretty.
2015-11-28 22:19:15 +03: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
feos 2ce108e310 lua: ability to SetBranchText.
doesn't make much sense to add text to existing branches from lua, but highly useful to set some text to a new branch.
and we also have a default branch text variable now.
2015-11-26 00:12:25 +03:00
feos 1f1382ceb7 tastudio: attach usertext to branches, make it editable from menu.
moved branch functions and menu items around.
2015-11-23 23:27:27 +03:00
Hathor86 d92eed5845 Menuing
Change the menu item name
Change interface name
turn menu item into a submenu dynamically filled
2015-11-21 01:03:48 +01:00
Hathor86 bae4d53cbf merge remote master 2015-11-20 13:14:38 +01:00
zeromus 28eae0dcb1 Revert "Revert "common logic for tempfiles""
This reverts commit 5196fc6b70.
2015-11-17 17:26:03 -06:00
zeromus 5196fc6b70 Revert "common logic for tempfiles"
This reverts commit 5afa44bbec.

and also "fix regression in libretro core loading and streamline open advanced libretro ui"
59048264cd but tortoisegit didn't put that in the commit message.
2015-11-17 17:10:27 -06:00
zeromus 6f71956faa add lousy logic to fix cheat compares 2015-11-15 18:22:12 -06:00
Hathor86 c7dcb42b94 Merge from maser@TASVideos 2015-11-15 11:27:00 +01:00
zeromus 5afa44bbec common logic for tempfiles 2015-11-15 03:01:58 -06:00
zeromus 22192e700b attempt to make it possible to store movies on disk instead of in memory 2015-11-15 02:27:48 -06:00
zeromus 75be59a650 revise UDLR mutexing to be a bit more graceful 2015-11-15 00:18:52 -06:00
zeromus d24f778a40 try supporting U+D/L+R priority control in addition to allow and forbid 2015-11-14 01:49:16 -06:00
zeromus aa3f916e7b fix error in previous rewind-related commit. im thinking it might not have been such a great idea now... 2015-11-09 20:52:04 -06:00
zeromus 2bf48e3c86 dont savestate at all if rewind is completely disabled 2015-11-08 22:18:04 -06:00
zeromus 53fcc09c08 various bugfixes to system/save pathing and support CAN_DUPE, to stabilize the gambatte and neopop cores 2015-11-08 19:18:08 -06:00
Hathor86 cc2c888870 Merge remote-tracking branch 'refs/remotes/TASVideos/master'
Conflicts:
	BizHawk.Client.EmuHawk/MainForm.Designer.cs
	BizHawk.Client.EmuHawk/MainForm.cs
	BizHawk.Client.EmuHawk/tools/CDL.Designer.cs
	BizHawk.Client.EmuHawk/tools/CDL.cs
	BizHawk.Client.EmuHawk/tools/CDL.resx
	BizHawk.Common/InstanceDll.cs
	BizHawk.Emulation.Common/CodeDataLog.cs
2015-11-08 22:41:51 +01:00
zeromus b745d5776a tidy libretro core info and use recommended extensions 2015-11-07 19:59:10 -06:00
zeromus 5c16f8b107 fix some assorted bugs, and experiments with handling more environment calls 2015-11-07 02:29:04 -06:00
zeromus 7651f418fe usably functional libretro player 2015-11-07 00:14:59 -06:00
Hathor86 f70a2c8c6c Merge from TASVideo 2015-11-01 22:01:19 +01:00
feos 19add0ec93 tastudio: save/load TasSession variables in .tasproj.
right now only includes current frame and branch. current scroll is not needed as we GoToFrame anyway, current selection seems pointless.
2015-10-25 17:53:25 +03:00
zeromus 4fe51a1364 support custom AR selection in addition to custom exact-specified resolution 2015-10-25 02:15:59 -05:00
feos 855561ac19 tastudio: last preparation before new tasproject entry.
old branch states won't load anymore, as they were part of common greenzone and were cut off. current states should still be compatible.
2015-10-24 17:17:33 +03:00
feos fd2e6848f1 tastudio: tsm never actually uses currentBranch, so why should it have it?
Revert "make sln version 2010 again." This reverts commit 48a59f1cef.
It's now known that to make newer .sln compatible to VS2010, one should install SP1.
2015-10-24 16:29:37 +03:00
feos 3f1a3907b5 tastudio: put branch states to a separate greenzone file.
default scroll speed to 3.
2015-10-24 12:47:34 +03:00
zeromus 76731ba0e7 Add TempFileCleaner 2015-10-24 02:48:16 -05:00
zeromus 93e7c91ee9 clean up lua console pause/stop behaviour a little bit and add listview icons to make it more clear what's going on 2015-10-22 16:28:52 -05:00
feos d92d39f515 tastudio: don't truncate LagLog if the branch's one is shorter, but input is the same. 2015-10-21 19:00:25 +03:00
adelikat aa01b725a6 Also handle lack of input callbacks when removing a lua function, not just on clear all 2015-10-17 20:03:07 -04:00
adelikat ac43fe203b Remove System.Windows.Forms reference from Client.Common 2015-10-17 19:28:20 -04:00
adelikat 2895c78be8 Move GLManager from Client.Common to Client.EmuHawk, it is inappropriate to be in Client.Common 2015-10-17 19:27:30 -04:00
adelikat 6ff3215a5f Move Exception box from Client.Common to Client.EmuHawk, it is inappropriate to be in Client.Common 2015-10-17 19:18:37 -04:00
adelikat 75e6216ca2 Rom Loader - don't call message boxes, use the error callback 2015-10-17 19:11:04 -04:00
adelikat 8f716363a7 Move UIHelper from Client.Common to Client.EmuHawk, it was inappropriate to be in the common library 2015-10-17 19:01:38 -04:00
zeromus 595f466ded add a custom exception display box 2015-10-17 01:18:37 -05:00
adelikat 32a2711303 When clearing lua callbacks, handle the case that input callbacks might not be implemented, also handle memory callbacks in a more consistent way 2015-10-12 19:02:03 -04:00
zeromus 4b8c7d77ac merge PR #503 from adituv - Movies: Reflection-based dispatching; PJM/PXM imports 2015-10-11 21:27:44 -05:00
zeromus a92cdf4730 Merge remote-tracking branch 'remotes/adituv-bizhawk/MovieReflection'
Conflicts:
	BizHawk.Emulation.Cores/Consoles/Sony/PSX/Octoshock.cs
2015-10-11 21:18:53 -05:00
zeromus 1e07625d1d d3d display method: do a better job of surviving device resets 2015-10-11 21:03:16 -05:00
Hathor86 b55a175556 Merge remote-tracking branch 'refs/remotes/TASVideos/master' into NewrRelease
Conflicts:
	Version/VersionInfo.cs
2015-10-11 19:51:03 +02:00
Hathor86 8f123527e8 Merge remote-tracking branch 'refs/remotes/TASVideos/master' into NewrRelease 2015-10-11 19:40:46 +02:00
adelikat 3ca25ccb69 Merge pull request #506 from Kabuto/master
C64 core: tape loading added, lots of bugfixes and improvements
2015-10-10 11:11:59 -04:00
Hathor86 8ad8ad2c6a Start back from initial release branch
Just to have cleaner changes
2015-10-07 23:54:57 +02:00
feos ef5369a443 tastudio: "Erase branch states before all the rest" option.
fixed branch info loading.
2015-10-06 21:51:03 +03:00
feos e0c2e43e48 tastudio: add an option for (not) using branch states in tasproj.
clueless about what should go in its description.
fixed new guid being assigned to branches loaded from the project.
2015-10-05 22:11:45 +03:00
feos 31e476a3cd tastudio: load projects without branch state info.
fix some other crashes, kill selection when loading a file.
2015-10-05 19:08:21 +03:00
feos 87dd32eeac tastudio: found another bomb set by picking branch states by index. two actually. 2015-10-05 00:24:41 +03:00
feos 89d919e6a9 tastudio: loop guid dup check.
don't remove marker 0.
update when going to frame 0.
don't check hasDuplicate against current states if branch is not current (what was it for at all?). releases Used per branch removal.
2015-10-04 21:10:40 +03:00
feos 2a8578c74f tastudio: keep the same identifier for updated branch.
ban context menu when there's no selection.
attempts to fix mysterious crashes in TasStateManager.
2015-10-04 18:00:04 +03:00
adelikat 9f67d8e59b TasBranchCollection - encapsulate unique identifier logic into TasBranchCollection 2015-10-04 10:43:36 -04:00
feos 4625bdce0f tastudio: a bunch of fixes.
- update branches per RefreshDialog()
- clear selection per right click if it's beyond movie length
- fix crash when load branch is called with null selection (can't stably reproduce, but it happens)
- assign guid to branches from the right place. this required setting some statics, don't know if it was right, but it works.
2015-10-04 13:39:14 +03:00
nattthebear 915abb9504 Stuff 2015-10-03 19:20:32 -04:00
Suuper d1fa718120 Put my AutofireStickyXORAdapter back and fixed the bug it had. 2015-10-03 09:36:07 -05:00
zeromus f50795b180 make on-screen watches position editable via the messages configuration ui 2015-10-01 01:39:22 -05:00
zeromus e6ea96771b fix crashes removing lua callbacks on some cores 2015-10-01 01:16:34 -05:00
adelikat ba74cc5dda Remove some unnecessary previxes in Global.cs 2015-09-30 16:26:09 -04:00
feos f3ad71af24 tastudio: duplicate hash check before adding. 2015-09-29 19:51:41 +03:00
Kabuto 004c8294fb c64 core uses ISettable now and supports 2 more video standards 2015-09-28 23:52:23 +02:00
feos 1175a86123 tastudio: use DivergentPoint() as a backup in case branches lose their states. 2015-09-23 19:43:21 +03:00
Iris Ward 217f425f09 Propagate cdNumber change
Include the cdNumber counting change in the text flavour PJM code.
2015-09-23 15:38:52 +01:00
Iris Ward 33c3d8b2fc Fix LINQ brainfart
Also tweak code alignment to use spaces rather than tabs
for alignment that doesn't affect indentation level.

Where(...).Count() > 0  ===>  Any(...)
2015-09-22 23:36:34 +01:00
Iris Ward d153c00c77 Add controller types to sync settings 2015-09-22 22:47:23 +01:00
Iris Ward 7e2d4a75b4 Use overloaded this[] rather than .Add on header import 2015-09-22 22:46:59 +01:00
Iris Ward 3f899b60c9 Formatting rules. Bleh 2015-09-22 01:02:49 +01:00
Iris Ward 1df8397b1c Implement text flavour PJM importing
Also implemented PXM importing via binary flavour PJM importing. Various
bug fixes in my existing binary flavour PJM implementation.
2015-09-22 00:47:25 +01:00
Iris Ward bb05bb57a8 Implement PJM format input
Created a prototype input reader for binary-format PJMs. Also exposed
controller definition creation as a static method on Octoshock as a
convenient way to define the controller setup.
2015-09-21 22:33:29 +01:00
Iris Ward 0e010a2988 Implement reflection-based importer
The reflection-based importer, for file types that aren't imported via a
legacy bkm file, dynamically searches the current module (i.e.
BizHawk.Client.Common) for all IMovieImport instances with the
ImportExtension attribute.

This is difficult to truly test without more non-legacy import
implementations, but appears to work with a dummy .pjm file.

It may be desirable to instead search the current assembly instead of
the current module, but I think all implementations should probably go
in BizHawk.Client.Common, so I chose to search by module instead.
2015-09-21 18:13:58 +01:00
Iris Ward 189390f001 Refactored out the import-via-legacy code 2015-09-21 18:02:41 +01:00
feos b5582722c8 tastudio: fix yet another branch crash. 2015-09-16 23:19:03 +03:00
zeromus 8f5059d53e discsystem - handle some errors that werent handled before 2015-09-16 14:27:28 -05:00
feos 6e16f0c5dc tastudio: thanks for letting a ulong overflow backwards. 2015-09-16 21:44:42 +03:00
feos 4f07c908a0 tastudio: more branch work.
- change skipRemoval default to true, set to false only on state capturing
- put guid hashes to BranchStates
- setup a couple of functions using guid
2015-09-16 19:40:50 +03:00
adelikat 227a35e474 Add a unique identifier to branches and save and load them to disk, still todo - use them in stuff 2015-09-15 20:42:27 -04:00
adelikat a8409a9c86 TasStateManager - some cleanup 2015-09-15 20:03:50 -04:00
feos ce3c9364df tastudio: ban state removal per branch load.
todo: figure out way to skip removal internally in StateToRemove().
2015-09-15 21:47:59 +03:00
feos b31c43321b tastudio: branches.
- update inputroll after branch operations
- properly remove BranchStates units
- don't load current branch
2015-09-14 20:45:27 +03:00
feos 62e25eadb0 tastudio: attempts to fix branch states.
relying on dynamic serial number was plain wrong, but TotalSeconds might be obsoleted by new branch field that doesn't change and is unique for each branch, like a counter of created branches.
todo: load branch states from tasproj, or at least not drop the states above divergent point when loading.
2015-09-13 23:36:47 +03:00
feos 4fd55da52a tastudio: various fixes.
- saving and loading tasproj markers
- flagging changes after branch operations
- clearing InputRoll selection
2015-09-13 11:44:15 +03:00
adelikat f1c77c349e Oops, add EmuLuaLibrary.MemorySavestate.cs 2015-09-10 17:36:20 -04:00
adelikat 98bc140a84 Issue #385 - Lua - add memorysavestate library for making and loading savestates in memory, with save, load, remove, and clearall methods 2015-09-09 20:47:56 -04:00
adelikat 3ba965321a make bizstring.split() 1-based 2015-09-09 19:57:14 -04:00
zeromus 21da5ad45a allow user to suppress doubleclick-to-toggle-fullscreen behaviour 2015-09-08 14:03:52 -05:00
adelikat b692acf2f9 TastStateManager - more exception prevention 2015-09-06 14:18:31 -04:00
adelikat 0a4ad42eaa TasStateManager - more work arounds to deal with the scenario of removing branches, I doubt this is the correct approach, but I don't know what else to do, someone should revisit this 2015-09-06 13:39:14 -04:00
adelikat f06e2d86da TasStateManager - fix crashes when deleting and updating branches, these are all probably hacks that need to be revisisted 2015-09-06 13:23:40 -04:00
feos 3fccda33fd tastudio: hail copypaste-driven development! 2015-09-06 18:02:50 +03:00
adelikat 0da8f3cac4 TasStateManager - don't modify while iterating 2015-09-06 10:56:31 -04:00
adelikat 2f3f5ad465 Tastudio branches - save and load markers to disk 2015-09-06 10:18:46 -04:00
adelikat 08978978d0 issue #493 - add option to not display OSD messages 2015-09-05 16:48:37 -04:00
adelikat 407f44bf96 Fix issue #461 - broken by Tastudio autofire patterns, THIS BREAKS TAStudio autofire patterns, they need to be fixed, in a way that doesn't break autofire 2015-08-24 20:51:53 -04:00
zeromus 7e828d5618 d3d display method 2015-08-24 13:10:50 -05:00
zeromus 3f78e2e70f add feature to display config > misc tab for disabling display of screen and hud for true maximum turbo performance. also display FPS in window caption during that mode, so you can still tell what's going on 2015-08-17 23:26:19 -05:00
zeromus a7bf968554 fix TasStateManager clearing bug 2015-08-17 16:29:45 -05:00
Suuper 1f4b0d5d77 -More work on TasStateManager
-Fix: SaveStateSettingsForm was setting the disk capacity to 1 mb on load if it had been set to 0.
2015-08-17 11:32:46 -05:00
Suuper f76c49ce1b -Fix: Loading a TasProj caued it to be saved immediately after. (Some old TasProj files are now broken.)
(Saving process for movies still needs some cleaning.)
-Fixed setting input log by reference when loading a branch
-Fix: TasStateManager wouldn't decrease Used when deleting a RAM state from a branch.
-Removed a useless call to Movie.Save()
-Fixed a bug with creating a savestate anchored tasproj.
2015-08-17 09:14:08 -05:00
Suuper b054032694 TasStateManager: Improve performance of StateToRemove
A lot of work on tracking states, still lots to do.
2015-08-16 11:28:03 -05:00
Suuper d6e3553449 TAStudio: Fixed displayed maximum state capacity.
Clear states to stay within the new limit when settings are changed.
2015-08-15 10:07:56 -05:00
zeromus 432adc7874 ..huh. fix building, and also change an int to a long where it was conceivably inadequate 2015-08-13 21:54:38 -05:00
zeromus 5bf21e391c TasStateManager uses a new data structure to write all states to one auto-deleting file per TasStateManager instance. TasStateManager is now IDisposable; this needs to be followed rigorously (I didn't do that). 2015-08-13 21:51:51 -05:00
Suuper 078bd102e8 TasStateManager should work with branch states on disk now.
Also now tracks the RAM/disk space used by branch states.
Added bookmarks to branches.
2015-08-13 13:03:22 -05:00
Suuper 4ce346661b Branch states on RAM should work. (Disk states will break things.) 2015-08-13 09:42:04 -05:00
zeromus 66c2d48e8d throw slightly more descriptive warning when loading a cue with a missing bin 2015-08-08 16:40:37 -05:00
zeromus 2a8ed31cbf add a bad PSX dump and change rom status printout a bit 2015-08-08 15:58:17 -05:00
feos e687c4ab1a tastudio: don't count rerecords while drawing 2015-08-06 20:03:30 +03:00
zeromus 4eb89c823d fix slow big O in TasStateManager, causing performance catastrophe when state scavenging begins. But I'm not 100% sure I did it right. 2015-08-05 19:42:01 -05:00
adelikat ba21484ddd add IRegionable as an emulator service to indicate NTSC vs PAL, etc. Refactor cores that conveyed this information to use this service, fixed cheaty reflection to grab this info to use the service instead, marked some cores as region not applicable where it made sense to me (I'm sure I'm wrong in some cases) 2015-08-05 20:12:09 -04:00
zeromus b981e00889 fully support read-only movie opening. I hope this fixes #453 2015-08-05 17:00:39 -05:00
zeromus 3ec314d20b TasStateManager: don't touch disk unless opened for 'write access' 2015-08-05 16:36:44 -05:00
zeromus 5402f1ff9e dont reorder cheats list when editing cheats 2015-08-04 22:25:58 -05:00
adelikat a686465911 Tastudio - Branches - show timestamp not movie length, and save/load the timestamp to the .tasproj 2015-08-04 21:41:31 -04:00
adelikat 07fddd31d7 Tastudio - tweak rerecord counting to what was probably intended, only increment rerecord count on Invalidate() if Invalidate() actually invalidated any states 2015-08-04 20:24:49 -04:00
zeromus 5173541730 fix #460 2015-08-04 18:44:21 -05:00
adelikat 12479cbc25 lua implement movie.getcomments() and movie.getsubtitles() 2015-08-04 18:33:22 -04:00
adelikat f3d8388dfe Lua - implement movie.getheader() 2015-08-04 18:22:22 -04:00
adelikat 2373e5bcd5 Support .xml disc bundling for PSX, note: this is sloppy code and mostly copy pasta, sorry. 2015-08-04 17:19:21 -04:00
adelikat 0205762409 lua - remove movie.insertframe() as it is no longer needed and was not coded in an acceptable way, if such a feature is needed in the future, it needs to be thought through better 2015-08-01 22:21:44 -04:00
adelikat 8ec8032061 lua - implement movie.startsfromsavestate() and movie.startsfromsaveram() 2015-08-01 18:16:40 -04:00
adelikat 383a462207 lua - implement movie.InsertFrame(int index, string logEntry), for now, will only work on .bk2 movies (.bkm and .tasproj will crash) 2015-08-01 15:46:43 -04:00
feos 90cdbc1d1f tastudio: fix crash when comparing branches with identical input and different length.
it was setting loop count basing on a longer branch (if it's current), the shorter one going OOB.
2015-07-31 00:04:01 +03:00
Suuper 0d87c8330c TAStudio: -Put lag log and change log back into branches.
-Bugfix: clearing states in a savestate-anchored movie threw an exception
-Clear disk states when clearing states
2015-07-30 15:14:34 -05:00
adelikat a219e7150e Tastudio - add an option to create a saveram anchored movie from a selected frame, just like the savestate anchored movie feature, it uses the current movie to create a verification log 2015-07-27 19:25:48 -04:00
zeromus 644a17dc19 fix nonsense in ReadByteRange; should fix #463, but havent tested 2015-07-26 19:56:27 -05:00
Suuper 2d64e0d115 TAStudio: -Scroll by painting doesn't require FollowCursor anymore
-Undo History form display bug fixes.
-Removed menu item to combine consecutive recordings/draws
2015-07-26 14:54:31 -05:00
adelikat 26f824625c TAStuido - support saving and loading of saveram in saveram-anchored movies 2015-07-26 15:48:12 -04:00
adelikat 490adc905e Support recording movies that start from SaveRam, note: as of this changeset tastudio does not support this concept and may interact in weird ways with saveram-anchored movies 2015-07-26 15:41:22 -04:00
Suuper f72eadb76e TAStudio: -Fix: Undo/Redo didn't always jump back to valid frame.
-Performance boosts with multiple selected rows
2015-07-25 22:49:52 -05:00
adelikat a2edd3a018 Tastudio - Branches - fix screenshot hover, and also set the screenshot hover size to a "1x" resolution for the given core 2015-07-25 21:31:06 -04:00
adelikat e73c7813bf Tastudio branches - make a copy of a branches log, instead of referencing it! 2015-07-25 18:13:56 -04:00
adelikat 182ce33a3c Tastudio branches - invalidate lag log on branch load for now, even though the information is saved in branches and is valid (todo: a better design or quit saving this info). Also don't load the changelog from branches, again, don't save this info if this isn't desired. 2015-07-25 18:02:58 -04:00
adelikat df41eeffc3 Tastudio - branches - invalidate on branch load at the point the branch diverges from the current greenzone, not at frame 0 2015-07-25 16:24:38 -04:00
adelikat 819a13a6f0 Tastudio branches - save the OSD frame buffer to disk as the size that it is 2015-07-25 12:04:39 -04:00
zeromus 63197300b4 add fullscreen auto-hide mouse cursor 2015-07-24 16:00:04 -05:00
Suuper 3c3cdc4590 Fixed a display bug cauased by player highlighting
(also renamed a variable and changed comment lines)
2015-07-23 13:30:25 -05:00
Suuper f9cd2f4075 -TAStudio: Players' 2, 4, etc input columns have darkened bg colors.
-LagLog is now moved over to new savestate-anchored movies
2015-07-23 12:55:22 -05:00
nattthebear e43e89e5cc tasproj branch thumbnail: change load to simply load whatever size is present in the zip file. 2015-07-22 18:02:38 -04:00
Suuper 01290d2e59 -Allow creating savestate-anchored movie from savestate-anchored movie
-Fix marker placement in savestate-anchored movies
2015-07-22 15:08:50 -05:00
Suuper 52544efec9 -Branches now have their own undo history 2015-07-22 14:31:47 -05:00
Suuper 6f105f6ee8 -Better fix of lag log clearing.
-Current branch is now highlighted in BranchView
2015-07-22 14:14:33 -05:00
Suuper 635ad9c01d -Fixed LagLog.Clone (was putting LagLog in the new WasLag)
-Fixed lag log being cleared on re-loading branch
2015-07-22 13:17:24 -05:00
nattthebear db372b993e Flip me upside down 2015-07-21 20:42:22 -04:00
adelikat dca259fff2 Tastudio branches - progress on loading the frame buffer when loading a branch 2015-07-21 20:31:51 -04:00
nattthebear 862f82b1b2 Screenshots on tasproj branches 2015-07-21 19:41:57 -04:00
zeromus 6e1cde2793 hookup PSF support 2015-07-20 23:11:00 -05:00
nattthebear 14db42c28a Stuff. Sorry, I'm having a bad day. 2015-07-19 17:09:05 -04:00
nattthebear e280e4f55c TasMovie Branch internals 2015-07-19 15:57:40 -04:00
zeromus f5f4ded789 add slow load handling for m3u files 2015-07-19 11:59:48 -05:00
adelikat 4188f2105e Tastudio - branches - ability to load a branch, currently the frame buffer does not have OSD info 2015-07-19 10:37:53 -04:00
adelikat 2201d01982 Merge branch 'master' of https://github.com/TASVideos/bizhawk 2015-07-18 22:20:51 -04:00
adelikat 1af28239dc Tastudio - lots of progress on branches 2015-07-18 22:20:38 -04:00
zeromus 37aca2bc92 change rom status text to reference accurate PSX menu Hash Discs tool name 2015-07-18 20:08:45 -05:00
adelikat ebe23ada64 Tastudio - save the lag log into regular mainform produced savestates 2015-07-18 09:48:14 -04:00
zeromus 1f9f712af9 psx - fix loading m3u with non-good discs 2015-07-17 11:48:20 -05:00
zeromus 3609a9682f load unknown audio discs as pce-cd (fixes loading of most pce-cd games) 2015-07-16 09:31:19 -05:00
Suuper 07a8a4c1d3 Removed SuppressGreenzoning because TAStudio should not allow the user to be on a frame that isn't "greenzoned". It will now jump back to the greenzoned area immediately when an edit invalidates part of the greenzone, and pause there until mouse up.
This fixes a bug which caused TAStudio to generate and keep invalid savestates.
2015-07-15 14:26:56 -05:00
zeromus d7a56eab3b dont fail loading not-in-gamedb psx games 2015-07-14 18:52:30 -05:00
Suuper e3a8c33be5 -Fixed typo in variable name (SupressGeenzonging)
-Removed state capture from TasMovie.RecordFrame
-Fixed: States weren't captured while left mouse button was still down from clicking a frame.
-TAStudio now automatically captures after loading a new movie.
2015-07-13 22:06:21 -05:00
feos 451fd779bc tastudio: apply autohold to appended frames.
needs current frame to be emulated with autohold already to pick up the pattern.
2015-07-13 22:44:17 +03:00
zeromus 56e3416de2 improve rom status report for PSX, and generate one for the M3U scenario 2015-07-12 20:23:27 -05:00
scrimpeh 667e4273f3 Firmware Manager - Add option to reload ROM if ROM load has failed before 2015-07-12 21:30:26 +02:00
adelikat b594360a25 We had two variables controlling the state of the visibility of the windowed status bar, remove one of them. Fixes issue #448 2015-07-12 10:58:13 -04:00
zeromus a7ae3c0cfc Merge branch 'discsys'
Conflicts:
	BizHawk.Emulation.Cores/BizHawk.Emulation.Cores.csproj
	BizHawk.Emulation.Cores/Consoles/Sega/gpgx/GPGXDynamic.cs
	libmupen64plus/mupen64plus-win32-deps
2015-07-11 14:01:44 -05:00
zeromus 0735b67565 add example of handling slow disc loads in frontend 2015-07-11 13:47:05 -05:00
zeromus a611bd5e66 load PSX discs using gameDB 2015-07-11 13:47:04 -05:00
zeromus f9c5b17097 restore discsys TOCRaw and DiscStructure synthesis and make octoshock disc reading work again 2015-07-11 13:46:36 -05:00
adelikat a9c460802b add an option to run lua scripts while turboing instead of bypassing them. Make this option true by default (a change to the current behavior). Add a checkbox in the customize dialog to toggle this option. 2015-07-09 20:14:52 -04:00
adelikat 7ecf96772c tastudio/lua - implement tastudio.setlag() 2015-07-09 13:16:55 -04:00
adelikat 3541c9e975 Make the lag counter settable, and expose this functionality in lua 2015-07-09 13:05:30 -04:00
feos bc321fedac keep DefaultMessageOptions instead of 2 _different_, _hardcoded_ units. 2015-07-09 02:07:21 +03:00
zeromus 83b2f70283 example of how to store default message positions so it can be used by default config and reset process too 2015-07-08 16:58:17 -05:00
feos 53c415a843 tastudio: keep track of rerecords, increment them in InvalidateAfter()
markers: fix input roll context menu command removing Markers
gpgx: updated dll
2015-07-09 00:48:04 +03:00
zeromus db1191dc48 emuhawk - add experimental prescale option to display manager 2015-07-06 12:31:30 -05:00
adelikat 19423092cd Tastudio/lua - implement tastudio.ongreenzoneinvalidated 2015-07-02 14:51:42 -04:00
adelikat 2790dcbf0d lua - implement userdata.containskey() 2015-07-02 14:29:19 -04:00
adelikat f847e905d2 tastudio/lua - add onqueryitembg event to the lua library, this is called during each cell's background color drawing callback, and gives the opportunity for lua to override the color. 2015-07-01 19:01:29 -04:00
nattthebear a0f3931257 Blah 2015-06-30 23:29:01 -04:00
zeromus 0341d24bc8 I think more stuff needed thread locking for more time in 7z library manager 2015-06-30 19:43:59 -05:00
adelikat e03da4f5fe Lua - add a userdata library, with basic api for a script to add arbitruary data to a dictionary. This dictionary is saved and loaded in savestates (if present). Scripts can use this to create counters and whatnot that need data saved in savestates 2015-06-30 18:54:42 -04:00
adelikat 13044547e4 Tastudio - fix issue #446 - don't greenzone between the mouse down and mouse up events when editing input 2015-06-28 10:43:45 -04:00
zeromus 80164c1fba import WIP discsys work from svn 2015-06-23 13:57:11 -05:00
adelikat 7c35d7b80d AppleII mnemonics - make L and R uppercase to be consistent with other alphanumeric buttons. I don't think this change breaks anything, other than cosmetics when looking at pre-existing Apple II movies 2015-06-21 16:20:39 +00:00
adelikat c23e69a810 When loading GBA movies, load the correct core too 2015-06-21 13:32:53 +00:00
goyuken 81d8018d4c apple2: support MONCHRONOME 2015-06-16 23:24:52 +00:00
hegyak 343190094e Apple IIe is not a Lynx. 2015-06-16 12:05:59 +00:00
adelikat 55b4991d8e Fix bug where movie was failing to go into finished mode and would crash instead, fixes issue #429 2015-06-14 13:29:19 +00:00
adelikat 7a090edcb0 hack to fix a bkm to bk2 bug 2015-06-08 22:49:30 +00:00
goyuken 274c29ff37 fix infinite recursion in loadrom for unsupported GB games 2015-06-07 16:43:10 +00:00
adelikat 7e35ca00a8 Add core name to GBA savestates 2015-06-06 21:06:59 +00:00
adelikat b9d9ffe7a5 Core picker for mGBA 2015-06-06 20:47:50 +00:00
goyuken 66f0bf15c0 Fix up some junkus in appleii core init, and add stub for mGBA 2015-06-04 02:04:42 +00:00
goyuken 7f275c5ab5 compress movies even if savestates are not compressed. separate config entry, not hookled up in config 2015-05-31 18:31:45 +00:00