adelikat
45003ea584
revert "Use Ranges" on TasMovie since it causes exceptions when attempting to create the first branch of a tasproj
2020-01-17 09:00:56 -06:00
adelikat
a51be3efbe
remove useless regions in previous commit
2020-01-13 15:50:49 -06:00
adelikat
63da3d7bd3
expose GenerateLogKey and Map as methods on ILogEntryGenerator and remove all the direct casting that was happening in tastudio code
2020-01-13 15:49:11 -06:00
YoshiRulz
dd4f9aaf64
Use ranges
2020-01-13 06:59:40 +10:00
adelikat
eaca35d3d0
properly use TasMovie.Session - fixes #1771
2020-01-12 10:55:15 -06:00
YoshiRulz
dabbaae075
Cleanup TasStateManager.Invalidate
...
had this written down for after #1591 merge
2020-01-04 04:54:26 +10:00
YoshiRulz
9ef32cf8f5
Merge ctors using default params, resolves a TODO
2020-01-02 22:10:42 +10:00
YoshiRulz
a8408ed3be
Improve exception docs in BizHawk.Client.Common
2020-01-02 21:51:27 +10:00
adelikat
18975e390d
use Globals less in Tastudio sub-components
2019-12-31 16:31:32 -06:00
James Groom
78fcde9480
Merge branch 'master' into winhacksbgone
2019-12-22 17:01:10 +00:00
adelikat
b80b367831
refactor IMovie to expose the movie mode, and make extension methods that do IsPlaying type logic. This way there can be direct checks, and more variety of methods without cluttering the interface
2019-12-21 16:34:29 -06:00
adelikat
d26cb7d272
small cleanup
2019-12-21 15:55:01 -06:00
adelikat
8ac53f51c0
move bkm files to the import folder now that they are only used for import
2019-12-21 12:55:57 -06:00
YoshiRulz
784c800ca2
Disable features using Win32 unless on Windows host
...
forms: GBAGPUView, GBGPUView, LogWindow, SNESGraphicsDebugger,
SynclessRecordingTools; features: A/V recording, logging to AWE(?)
2019-12-21 18:31:03 +10:00
adelikat
7cd4bf881c
TasBranch - remove last reminents of UniqueIdentifier.GetHashCode()
2019-12-08 14:26:29 -06:00
adelikat
6107bc4553
TasMovie - rip out input caching attempt that wasn't even working
2019-12-07 12:21:42 -06:00
adelikat
9bb07dca76
Bk2ControllerAdapter/Bk2Movie - don't new up everytime some things that don't change through the lifetime of the object. HUGE (3x-4x) speedup to TAStudio
2019-12-07 11:35:48 -06:00
adelikat
4a522263d9
Bk2ControllerAdapter - small cleanups
2019-12-07 11:02:17 -06:00
adelikat
6eb9fa9b51
movie importers - import the core header key on systems that we check for core when loading the movie
2019-11-26 20:10:34 -06:00
adelikat
f0f8cd3171
cleanup Bk2Movie.HeaderApi.cs
2019-11-26 20:04:12 -06:00
adelikat
3c14371009
pjm import - fix analog stick importing
2019-11-26 09:11:20 -06:00
adelikat
3e92b8c5ab
pjm import - account junk white space at the ened of the file
2019-11-26 08:53:09 -06:00
adelikat
c741c37789
fix .pjm import, text based input parsing was completely broken. Fixes #1723
2019-11-25 15:02:26 -06:00
adelikat
64f32983f6
misc movie code cleanups
2019-11-25 08:37:11 -06:00
adelikat
ffd2aedfa5
oops, fix paste logic to be the first different frame, not the last
2019-11-24 19:23:12 -06:00
adelikat
6eef264f91
paste - only invalidate on the first different frame pasted, rather than the first selected frame
2019-11-24 19:14:49 -06:00
adelikat
1f4a2274d3
TasMovie - more cleanup
2019-11-24 16:06:01 -06:00
adelikat
60487c6a96
don't use Guid.GetHashCode, this was a leftover from some old bad code
2019-11-24 15:53:33 -06:00
adelikat
caced9c2a8
TasMovie - remove unused constructor params
2019-11-24 15:40:26 -06:00
adelikat
6a584c00bd
TasMovie - delete unused progress worker
2019-11-24 15:35:45 -06:00
adelikat
7d0b736e8d
Simplify TasMovie by using auto-properties
2019-11-24 15:33:25 -06:00
adelikat
1c67066e13
TasMovie - a small simplification
2019-11-24 15:26:44 -06:00
adelikat
289971c9e9
.tasproj - convert Session saving/loading to json. This is a breaking change, and older versions will silently fallback to defaults
2019-11-23 21:55:29 -06:00
adelikat
b4c4c3b870
.tasproj - use json to save/load statemanager settings. This is a breaking format change, earlier .tasproj will load and silently fallback to default settings
2019-11-23 21:43:23 -06:00
adelikat
707419bba1
some TasMovie cleanups
2019-11-23 21:33:48 -06:00
feos
d15dc56e15
address #1631 for gambatte
2019-11-20 21:25:55 +03:00
adelikat
eb1d87933b
Fix Nintento (breaking config change but we've already thoroughly broken compatibility since last release), partially addresses #971
2019-11-16 12:42:18 -06:00
adelikat
ab9c7699ec
misc cleanups
2019-11-15 15:15:13 -06:00
adelikat
c4658c3e85
remove Bkm as a IMovie implementation and remove all code other than what is necessary to import it
2019-11-14 21:41:37 -06:00
adelikat
adf834480a
remove .bkm as a standard movie type, require user to run the importer
2019-11-14 21:39:15 -06:00
adelikat
8dfbd752ae
SmvImport - remove useless If
2019-11-14 21:03:50 -06:00
adelikat
40e5106064
oops
2019-11-14 18:01:52 -06:00
adelikat
5aed5ed9c7
rename importer attribute
2019-11-14 18:01:16 -06:00
adelikat
673073e650
data drive the import movies dialog filter
2019-11-14 18:00:33 -06:00
adelikat
0235ca21ab
make movie importers internal
2019-11-14 17:19:59 -06:00
adelikat
af50d74b98
simplify movie import code more
2019-11-14 17:00:47 -06:00
adelikat
f93766e5bb
Movie import cleanup
2019-11-14 16:35:29 -06:00
adelikat
0043c1de1e
Movie Import cleanup - use IMovie more, don't redundantly save in Pjm and Psx importers, cleanups
2019-11-14 15:59:01 -06:00
adelikat
eb1b658f6e
movie import - cleanup
2019-11-13 20:52:20 -06:00
adelikat
fb8111d630
convert .mmv import to new style, properly import game gear flag
2019-11-13 20:52:19 -06:00
YoshiRulz
5eb54dbf9e
Fix #1727
2019-11-14 11:37:13 +10:00
adelikat
641c3e9f82
convert .smv importer to new style, also convert to bsnes instead of snes9x
2019-11-12 14:59:07 -06:00
adelikat
33d53638e9
convert Vbm importer to new style
2019-11-10 14:35:58 -06:00
adelikat
dce39c1cff
convert GMV importer to new style
2019-11-10 13:20:13 -06:00
adelikat
b1bdb8c7ea
port fmv importer to new style
2019-11-10 12:48:51 -06:00
adelikat
f9eadf104b
delete unused movie import code
2019-11-10 12:18:28 -06:00
adelikat
c5ecba326f
convert YMV importing to new way, and also fix it, it's been broken for a long time, if it ever worked
2019-11-10 12:14:50 -06:00
adelikat
c1516de259
Convert mc2 to new import style, properly support pcecd flag, and number of controller ports
2019-11-10 11:35:45 -06:00
adelikat
ced5b313a5
Leagcy movie import - remove more fm2 and lsmv specific code
2019-11-10 11:10:45 -06:00
adelikat
6086f98fa0
convert lsmv importer to new style
2019-11-10 10:55:53 -06:00
adelikat
223795887e
remove importer support for .mcm, .nmv, .vmv, .zmv. These are very dated and with very few movies out in the wild
2019-11-10 10:02:26 -06:00
adelikat
6d535a11ee
Convert fcm importer to new style, input parsing seems to have been broken this whole time, this commit doesn't fix that, just converts it
2019-11-10 09:55:27 -06:00
adelikat
d0f54f88ee
delete some fm2 specific legacy importer code
2019-11-10 09:05:17 -06:00
adelikat
8baa400d34
fix up new fm2 import and use it instead of the old one. FDS is still not supported, nor peripherals, but they weren't supported in the old one either
2019-11-10 09:00:27 -06:00
adelikat
0a63255244
progress on fm2 importer rewrite (not wired up yet)
2019-11-10 09:00:27 -06:00
adelikat
7c9f2a2873
cleanup Import classes
2019-11-10 09:00:27 -06:00
adelikat
46ea09da10
MovieImport - cleanup, and properly wire up the new style importers. Pjm, Pxm no longer broken
2019-11-09 14:43:49 -06:00
adelikat
93562eb935
cleanup FileLoader.cs
2019-11-09 13:40:15 -06:00
J.D. Purcell
fec63fb66a
Spaces -> tabs, fix mixed newlines.
2019-11-03 20:58:36 -05:00
adelikat
00691b58a2
misc cleanups in Client.Common movie and watch files, mostly typos and C#7isms
2019-10-31 19:25:11 -05:00
adelikat
7d554f06d3
return an IMovie instead of Bk2Movie from ImportFile
2019-10-31 16:08:05 -05:00
adelikat
3b25fdc8ca
simplify some movie import code
2019-10-31 16:08:05 -05:00
James Groom
90b0574bc3
Remove unnecessary calls to ToList (e.g. in foreach)
...
squashed PR #1591
2019-10-13 15:50:57 +00:00
alyosha-tas
d2fe217869
GBHawk: expose 4x core
2019-10-04 13:52:29 -04:00
alyosha-tas
79c4b1e846
GBHawkLink3x: Initial Commits
2019-09-08 16:35:39 -04:00
feos
ab042fafd0
srt export: I was dumb and made it edit the original thing instead of the copy
2019-08-30 19:51:49 +03:00
adelikat
290de71b71
some misc cleanups
2019-06-28 20:33:40 -05:00
adelikat
6b249c648d
fix a bug in TasLagLog, not sure how it was working
2019-06-28 20:26:18 -05:00
adelikat
062ec8cb97
remove a todo that we decided not to do
2019-06-28 20:22:10 -05:00
feos
2edf5c08f8
Merge pull request #1592 from TASVideos/tsm-interface
...
Tsm interface
2019-06-23 18:04:56 +03:00
alyosha-tas
982dc479e7
SubNESHawk: Play Movie dialog now calculates time correctly
2019-06-21 17:58:13 -04:00
alyosha-tas
fb9ac2f3af
Vectrex: hook up controllers
2019-06-16 08:17:34 -04:00
feos
a2846ea8e6
fix #1447
2019-06-16 10:41:10 +03:00
adelikat
5075160355
some cleanups
2019-06-15 18:38:56 -05:00
adelikat
cb4b7d7089
some cleanup
2019-06-15 18:31:46 -05:00
adelikat
26c190cd32
simplify
2019-06-15 18:26:59 -05:00
adelikat
c9ae8e3db3
StateManagerState begone!
2019-06-15 17:06:13 -05:00
adelikat
ea55217c3f
I'm convinced this is a worthless check, -1 was never being passed in, and shouldn't be
2019-06-15 16:49:08 -05:00
adelikat
3ec2ec325a
IStateManager - refactor indexer to not return a keyvalue pair, since it by design will try to return the exact frame, returning the frame is redundant
2019-06-15 16:43:21 -05:00
feos
6f5d2cf24b
movie: when pause on movie end is chosen, go to finished mode instead of stopping
2019-06-16 00:32:39 +03:00
adelikat
d79a00f035
remove IStateManager.IsMarkerState
2019-06-15 16:17:49 -05:00
adelikat
e89bb6c276
reorg TasStateManager file
2019-06-15 16:13:16 -05:00
adelikat
eaef336492
rip out IStateManager.MountForWriteAccess() and simplify
2019-06-15 16:06:35 -05:00
adelikat
c87c1d8328
simplify
2019-06-15 15:51:56 -05:00
adelikat
d4432db7f9
simplify
2019-06-15 15:44:34 -05:00
adelikat
2a8b4504cd
Simplify
2019-06-15 15:43:22 -05:00
adelikat
7f43fb09af
delete an absurd check
2019-06-15 15:29:25 -05:00
adelikat
d998a9587f
remove a todo
2019-06-15 15:28:10 -05:00
adelikat
21c164abcf
simplify Last implementation
2019-06-15 15:22:12 -05:00
adelikat
6004f30d3a
rename IStateManager.ClearStateHistory -> Clear, LastStatedFrame -> Last
2019-06-15 15:19:18 -05:00
adelikat
0ab1b1887e
IStateManager - remove IDisposable, this isn't a terrible idea, but let's put it back if/when we need it. Remove IDisposable from StateManagerState
2019-06-15 15:15:14 -05:00
adelikat
b1296dd9bb
rip out NDBDatabase
2019-06-15 15:13:08 -05:00
adelikat
ed85ce806b
more cleanup
2019-06-15 14:57:26 -05:00
adelikat
81ee00a1b6
cleanup
2019-06-15 14:56:03 -05:00
adelikat
e0a51eaab1
Rename IStateManager.StateCount -> IStateManager.Count
2019-06-15 14:49:43 -05:00
adelikat
cb4e71ebf7
rename a StateManager method, and delete some unused methods
2019-06-15 14:40:18 -05:00
adelikat
8f116a8428
Pass TasMovie into StateManagerDecay and have it get the last edited frame instead of from IStateManager
2019-06-15 14:35:31 -05:00
adelikat
3c27a332bb
create IStateManager interface and use that instead of TasStateManager
2019-06-15 14:31:06 -05:00
adelikat
1bcf6394ed
cleanup
2019-06-15 13:27:10 -05:00
adelikat
694ba93ec1
I think this is the correct wasLag logic
2019-06-15 13:10:31 -05:00
adelikat
f431492944
better code for populating wasLag, I think
2019-06-15 12:53:17 -05:00
adelikat
3b9e54c250
refactor TasLagLog to allow for gaps in the history. Note that this is a breaking .tasproj format change currently
2019-06-15 12:11:52 -05:00
James Groom
067477ce18
Merge branch 'master' into clean_docs
2019-06-14 13:28:39 +00:00
feos
2423f44540
tastudio: drop laglog from branches since they don't have greenzone anymore
2019-06-13 19:39:52 +03:00
feos
bc990061b7
tastudio: refactor out a variable
...
fix autorestore triggering while drawing on future frames
2019-06-12 22:34:16 +03:00
feos
f5bcdc4aba
fix #1513
...
OSD info on branch hover is mandatory, so I'm not removing it. drawing the branch OSD-framebuffer on the emulator screen is barely possible without butchering everything, so I'm not doing it. instead, keep both core and client framebuffers and use them where they make sense: osd FB shows up on hover, core FB goes to emulator screen on branch load.
2019-06-09 20:34:14 +03:00
YoshiRulz
2642ef4049
Remove empty docs
2019-06-06 16:41:10 +10:00
alyosha-tas
1c9182a290
Fix exception when statrting from saveram multple times
2019-04-21 09:06:16 -04:00
vadosnaprimer
7915ec8bc1
tsm decay: try to work around some more removal bugs
2019-04-18 19:11:45 +03:00
James Groom
779975f689
Use nameof
2019-03-28 14:17:14 +11:00
YoshiRulz
9d0ee22885
Use string interpolation
2019-03-20 15:01:12 +10:00
alyosha-tas
2bddf3663e
TAStudio: Fix some bugs in new from menues
2019-01-19 13:30:42 -06:00
alyosha-tas
74d20ca45c
SubNEShawk: Add VBL Count to BK2 movie header
2019-01-12 13:27:00 -06:00
feos
56e77f4907
tastudio: allow to actually unbind markers from input, and unbind by default
2019-01-05 21:48:40 +03:00
feos
cd2d63b04a
tastudio:
...
- don't use branch laglog after loading it. it's useless because we invalidate if needed anyway
- PauseOnFrame being null started to crash seeking, fixed
- make use of movie alias in branchbox
- capture tsm state after loading the branch
todo: if we load a branch in the middle of invalid greenzone, advancing won't draw new greenzone even tho states are being created. laglog doesn't seem to allow gaps either. unsure how to resolve
2019-01-05 21:30:06 +03:00
feos
b316efb922
cute, I forgot to save the actual changes
2018-12-03 21:16:06 +03:00
feos
3a688d543b
tastudio: fix rec mode dying when appending movie frames
...
close #1376
2018-12-03 21:10:14 +03:00
layland34
edab819d6b
fix typo
2018-11-25 14:54:55 +01:00
adelikat
288baf568d
Revert "here's how I think input display should work. also fixes your bug. also breaks something that had this comment (maybe)"
...
This reverts commit d4a48a8ee1
.
2018-11-18 10:43:11 -06:00
alyosha-tas
6dbbc9256a
Movie Importer: Display Failure Message
2018-11-10 17:23:45 -06:00
Asnivor
acebf2621c
Manual reversion of PR #1277
2018-09-21 15:38:52 +01:00
Asnivor
2565f49c89
Merge branch 'AmstradCPC' into master
2018-09-19 14:56:41 +01:00
zeromus
ba4b32f619
rename TempFileCleaner to TempFileManager; add global path config for temp files
...
I did this in a funny way (sets the environment for the process).
The idea is that any code which sloppily used Path.GetTempDirectory (etc.) would now have its pathing changed.
It is a little dangerous to allow this to be changed on the fly (I do allow it) since something may expect it to be stable, but I think it's OK.
So anyway. keep your eyes peeled for problems. It's possible I could do this differently and only affect a subset of safely managed things.
should fix #1252
2018-09-11 21:32:50 -04:00
zeromus
d4a48a8ee1
here's how I think input display should work. also fixes your bug. also breaks something that had this comment (maybe)
...
// adelikat: TODO: this is likely the source of frame 0 TAStudio bugs, I think the intent is to check if the movie is 0 length?
2018-09-10 16:57:10 -04:00
feos
fbdea8282d
add missing zxs mnemonics
...
tastudio: properly handle Show X menu items
2018-09-10 20:22:41 +03:00
Asnivor
f436e25426
Fix movie header SystemID ( #1277 )
...
From ticket #1246
Small change to MovieConversionExtensions.PopulateWithDefaultHeaderValues()
Just changes SystemID to "GG" or "SG" if Global.Emulator .IsGameGear or IsSG1000 is true.
Without this, the play movie dialog shows 'Platform' as SMS for game gear and SG1000 movies (and highlights this in RED as it is incorrect).
2018-08-22 20:51:20 +03:00
feos
a365284383
tastudio states decay: fix logic for last edited frame
2018-08-22 20:05:33 +03:00
Asnivor
a471206d6a
ZXHawk: Added bk2 mnemonic constants
2018-08-13 09:12:38 +01:00
Asnivor
531833c7b0
CPCHawk: Initial project outline (may or may not come to something eventually)
2018-07-03 14:53:09 +01:00
feos
a0e5e0e593
tastudio: actually don't drop state above last edited frame
2018-05-10 20:32:44 +03:00
feos
056c24e4cf
tastudio: attempt to fix greenzone decay failing to drop states
2018-05-09 17:18:21 +03:00
Asnivor
a679a8a7f2
ZXHawk: platformrates - more accuratey
2018-05-08 22:01:10 +01:00
Asnivor
f79e2853c0
ZXHawk: Added to PlatformFrameRates.cs
2018-05-08 21:57:19 +01:00
adelikat
ca0ae3d971
Make the bk2 SetControllersAsMnemonic implementation less bad. Fixes #1181
2018-04-28 09:48:24 -05:00
feos
ae6ce00d7c
I've heard bad things about ElementAt()
2018-03-27 19:01:17 +03:00
feos
661a15dc2c
tsm decay: remove states within internal state gap
...
states settings: clamp things harder
2018-03-11 17:57:30 +03:00
feos
3932e5a025
tsm decay: fix failing to delete frames if marker is there
...
markers can be *not* mod _step
2018-03-11 13:49:40 +03:00
feos
244530ffe3
tastudio: thanks for this 4 years old off-by-one
...
these kinds of errors are haunting me lately!
actually useful info about what it fixes: greenzone not being created after you insert right on current frame
2018-03-10 18:01:08 +03:00
feos
9c0328859d
tastudio: fix disgusting copy-paste error causing exceptions out of nowhere
2018-03-10 18:01:08 +03:00
feos
9d95a520f9
tastudio: fix analog values getting stuck in input port for new frames
...
interestingly, MovieControllerAdapter.LatchSticky() is only used by tastudio, so this shouldn't cause problems
2018-03-08 21:15:18 +03:00