Commit Graph

152 Commits

Author SHA1 Message Date
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
YoshiRulz 9d0ee22885
Use string interpolation 2019-03-20 15:01:12 +10: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
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
vadosnaprimer e99ea11cf7 tastudio: why don't we update input every new frame we capture
everybody loves tiny off by one errors that completely break everything
2017-11-05 16:23:26 +03:00
alyosha-tas ebc7958a68 Update Movies to remove EMU7800 2017-08-25 09:42:39 -04:00
adelikat c6e0e9fa57 Rename CoreAttributes to CoreAttribute as to not be a bad person 2017-07-12 14:10:55 -05:00
adelikat 8de4e7bff9 add ui to switch to Atari7800Hawk, still not useable by humans, needs gamedb stuff 2017-05-27 08:56:25 -05:00
adelikat e0e5eaea44 Movie Session - fix logic with remembering mGBA vs VBA, also some other misc cleanups and add some documentation 2017-05-19 08:36:52 -05:00
adelikat 70baf9d306 Client.Common cleanups 2017-05-18 11:36:38 -05:00
adelikat dfea029fe4 Misc cleanups in Client.Common, documentation fixes 2017-05-17 11:16:55 -05:00
adelikat e0985465b6 misc Client.Common code cleanups 2017-05-09 13:19:55 -05:00
feos 64665f0e82 tastudio: use LatchSticky() when adding new frames
fixes autohold behavior, making it operate like it did before banning user input latch in replay mode
now in replay mode all input is ignored except for autohold, which is set via tastudio gui
2017-03-12 17:28:54 +03:00
feos a30b89039f more topmost modal dialogs 2017-03-12 14:50:24 +03:00
feos ac2a69e7dd gpgx: switch to real interlaced mode when needed (still 60fps)
window resizes by itself if no maintain aspect ratio is forced

todo: states have broken graphics in that mode, but that's likely the original core thing
2017-02-18 23:34:44 +03:00
feos f1a617b047 tastudio: stop latching input in playback mode if new frames are generated
addresses #801
2017-02-18 20:54:59 +03:00
adelikat 2d9213c379 IController - Remove the indexer property and refactor code accordingly, also simplify and cleanup many of the IController implementations 2016-12-14 14:12:16 -06:00
adelikat 5ff33e7569 Rename IController.Type to IController.Definition to more clearly describe the property 2016-12-12 12:30:32 -06:00
feos a2b55291b3 tastudio:
- movie end doesn't switch to record mode anymore. fix #586
- recording mode checkbox
- fix rec mode dying during fast rewind
todo:
- readonly hotkey doesn't work until we click the checkbox
- movie status icon doesn't show up if tastudio is autoloaded
2016-08-06 22:28:25 +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
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
zeromus b981e00889 fully support read-only movie opening. I hope this fixes #453 2015-08-05 17:00:39 -05:00
adelikat c23e69a810 When loading GBA movies, load the correct core too 2015-06-21 13:32:53 +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
SuuperW 52659ac9a9 -Hacky removal of a useless save when loading a TasProj
-Made ControlsOrdered much faster
2015-03-23 21:16:13 +00:00
SuuperW 7e29f04f01 -Macros work without a TasMovie
-Bugfix: Display showed movie still playing after last frame
-Bugfix: Autorestore frame was lost when making rapid changes
-Bugfix: Canceling conversion of movie to TasProj stopped movie.
2015-03-20 16:53:42 +00:00
SuuperW 9328dd2f3a -TAStudio automatically set Read-Only
-TAStudio no longer refreshes every frame if playback cursor isn't visible; slight performance boost
-Editing while in playback won't mess up the LagLog (states still do)
-Fixes to rotated display and HBar scrolling
2015-03-19 19:55:38 +00:00
SuuperW 6783978f49 Bugfix: Extending movie by painting invalidated last frame
Moved GreenzoneCurrentFrame call to a new method called after frame advance.
Feature: Scroll to marker
Page up/down now scrolls by one page
Scrolling via dragging bar and via wheel now both have the same max value.
2015-03-16 20:42:14 +00:00
adelikat 240b89082b Tastudio - fix capturing during the movie playback frame loop, used some duct tape for now, need a better solution 2015-02-24 21:56:01 +00:00
adelikat aabd3f4526 create IMovieSession with the necessary API, instead of using an instance of MovieSession, the API though is completetly horrible, we need to address this 2015-02-22 23:23:36 +00:00
adelikat fd1621a536 pass in an Emulator instance to QueueNewMovie() 2015-02-22 19:57:24 +00:00
adelikat 1d3e0471d7 Remove references to Global.MovieSession in MovieSession itself 2015-02-22 19:47:14 +00:00
adelikat ec9bc9462b fix slowdown in movie finished mode 2015-01-16 17:56:56 +00:00
adelikat 21f5209726 oops, fix movie recording that was busted by revision 8761 2015-01-12 22:48:57 +00:00
adelikat 5e73e82b29 Fix the "pause" movie end option 2015-01-10 15:49:31 +00:00
adelikat 57023ffcb7 Movie playback - fix issue 358, duplicate input after a movie ends, note: this commit could be a breaking change for other movie related things (such as alternate movie end types other than the default of "finished") 2015-01-10 15:12:58 +00:00
adelikat fdc290cc14 Roll back last commit, nevermind. 2015-01-06 02:29:30 +00:00
adelikat f88b5389c1 Break everything. Seriously, a total cock-up. But also: Fix issue 358, duplicated input after a movie ends. Movie recording isn't obviously horribly busted from this, but just about anything movie related is now possibly busted, if you are looking for some mysterious regression in some movie feature, here's a good place to start! 2015-01-06 02:10:21 +00:00
adelikat 2f8a59a219 When the "Pause" movie end option is selected, fix bug where unpausing keeps repausing the emulator, now it will pause on movie end, and advancing further will stop and close the movie 2015-01-03 03:27:17 +00:00
adelikat b0eb4ee791 When loading a movie that specified quicknes or neshawk (or bsnes vs snes9x), don't permanently override the user's core preference 2014-11-09 17:14:16 +00:00
adelikat d6b4ce6dfe A fix to RunQueuedMovie, this doesn't seem to cause regressions, and I don't that the old code was behaving incorrectly, but the code was definitely wrong, and this is correct 2014-10-18 20:55:10 +00:00
adelikat 734b8338bc Fix always getting a "movie was written to disk" message when stopping a movie, will now only say so if it actually was saved to disk 2014-09-27 23:44:59 +00:00
adelikat da7cb4ec59 when loading a movie, gracefully handle a movie/rom system id mismatch 2014-09-27 15:49:39 +00:00
adelikat b3fffa99d3 Fix a bug in movie recording when the movie end action of "record" is picked, in that case, switching to record after a movie finishes was eating a frame 2014-09-18 22:54:15 +00:00
scepheo a1a73a2fef Fixed the core detection when playing back a NES/SNES movie. 2014-08-30 19:20:09 +00:00
adelikat 9d053eac4e Fix multitrack recording 2014-08-17 16:29:39 +00:00
adelikat 95bdfaba42 ugh, oops 2014-08-17 16:00:46 +00:00
adelikat 71a564b1cf Movie MultitrackRewiringControlllerAdapter to a property in the Multitrack object 2014-08-17 15:11:04 +00:00
adelikat 0a608edd07 some renaming and cleanup of the Multitrack object 2014-08-17 15:04:23 +00:00
adelikat b91180d6a0 2014-08-17 00:13:00 +00:00
adelikat 64206efe82 Simplify some code in MovieSession.cs 2014-08-16 21:45:36 +00:00
goyuken 20f78a579f "fix" issue 246 by causing an absolute termination earlier in the process that makes it clear what happened 2014-08-15 17:50:43 +00:00
adelikat 2a7d4025cf Multitracking - restart when stopping or starting a movie, I busted this when refactoring to the Queued movie concept, also simplify some code in the multitrack object 2014-08-03 20:34:45 +00:00
adelikat 8799f27f60 Rip out the sync settings hack 2014-08-02 17:49:10 +00:00
adelikat bcd78cc4b8 Round 1 of Movie loading system overhaul, this fixes the problem of loading sram when a movie is loaded. Still todo: some cleanup of some hacks that are no longer needed, and restoring the ability to open the play movie dialog and other things, while a movie is active 2014-08-02 15:32:48 +00:00
adelikat 0a227060b7 Set the mainform movie statusbar icon more often 2014-07-19 16:03:12 +00:00
adelikat b53cc908b8 Add options to how to handle the ending of movie playback, in addition to finished mode, it can now pause, stop, or switch to record. TAStudio - automatically override user's preference with switch to record (and restore their setting when disengaging tastudio 2014-07-14 00:35:33 +00:00
adelikat 02a5337cd6 Movies - rework some things so that MovieSession is in charge of sending a movie into finished mode, as opposed to GetInutState() having the side effect of MovieFInished 2014-07-13 22:36:37 +00:00
adelikat f79a674219 Remove GetInput() from IMovie 2014-07-13 22:17:31 +00:00
adelikat cb3e340a1a Movie stuff 2014-07-08 15:15:35 +00:00
adelikat 3a011ad788 Refactor to put multitrack logic into the multitrack object itself instead of in the OSD manager and hotkey logic 2014-06-29 23:13:44 +00:00
adelikat 27fb2ce9a0 Virtualpad Analog sticks - in record mode show the previous frame's input in gray 2014-06-29 14:42:20 +00:00
adelikat 9e73db3daa A round of code cleanup on movie code 2014-06-29 03:03:27 +00:00
adelikat 7fa551708f Virtual Pad - get analog button working on movie replay 2014-06-24 17:12:20 +00:00
adelikat 10c48bb3f8 Bk2 - take the log key into account when replaying a movie input log 2014-06-21 14:33:33 +00:00
adelikat ac2ea9f6e0 Fix non-bk2 movie loading 2014-06-19 01:47:22 +00:00
adelikat 9a16540e14 Movie 2.0 - simplify some code 2014-06-18 19:34:27 +00:00
adelikat 6c2ba47522 a movies 2.0 cleanup 2014-06-17 01:13:20 +00:00
adelikat 6b73891a91 More bk2 progress 2014-06-15 14:44:26 +00:00
adelikat c807e27496 Some movie code reorg and cleanup 2014-06-15 13:03:24 +00:00
adelikat 6ec1a45b70 Major cleanup of MnemonicsGenerator - change it to a LogEntryGenerator notion, and only expose it through a movie implementation, via an ILogEntryGenerator interface 2014-06-14 22:36:32 +00:00
adelikat 18d0a59869 another small Movies 2.0 todo 2014-06-14 14:09:55 +00:00
adelikat 7e9b13f5c3 Some movie refactoring - moving a function into the importer class, remove MovieExtension from the config file and instead add it as a movie property, add some todo comments in places regarding movie 2.0 2014-06-08 19:36:33 +00:00
zeromus 09daa3f939 fix read+write mode binary loadstate exception bug? 2014-04-18 17:41:14 +00:00
adelikat 2d51ac5d13 Move a function from mainform to moviesession 2013-12-27 14:39:01 +00:00
goyuken 8bd8af15fe clean up the binary save state api a bit 2013-12-17 21:26:15 +00:00
adelikat 0737f884bd a new style Mnemonics lookup table, and a bunch of various refactorings. 2013-12-07 16:31:04 +00:00
adelikat affc040dbd I round of code cleanup on movie related files 2013-12-05 00:44:56 +00:00
adelikat 894d9e9c45 Fix "out of order loadstating" when recording that was broken in the past few commits. Simplify HandleMovieLoadState even more. 2013-12-05 00:20:21 +00:00
adelikat d9c1a5bfe8 Simplify HandleMovieLoadState() 2013-12-04 14:42:24 +00:00
adelikat b70d03a93f More simplifying Movie Loadstate code 2013-12-04 03:16:35 +00:00
adelikat ec030ae05e Rip out the saving, checking, and dealing with Guids for movie files, it is an outdated notion. 2013-12-04 03:04:29 +00:00
adelikat b7d553cb4e Move the readonly flag from Global to MovieSession 2013-12-03 18:08:45 +00:00
adelikat e1d1095c3e Movie stuff 2013-12-03 15:59:46 +00:00
adelikat d71ec20df7 IMovie - more usage of MnemonicsGenerator to communicate input 2013-12-03 15:22:13 +00:00
adelikat b80f5a07ea Communicate with IMovie via MnemonicsGenerator objects 2013-12-03 02:10:17 +00:00
adelikat 316aa56ce9 Some more movie progress and fix exception thrown on startup 2013-12-01 01:55:41 +00:00
adelikat e686e595b9 Refactor use of Movie Frame count - also fix play movie to show infinite movie's frame count as "Infinity" 2013-11-30 03:10:05 +00:00
adelikat 3eb3b41199 Some more movie code refactoring - better naming and less passing around writer objects 2013-11-30 02:50:54 +00:00
adelikat 29a0fa49f8 Simplify IMovie and refactor some code to allow that, this also disables more functionality in TAStudio but it is disabled in trunk currently anyway (pending a rewrite). Also a bunch of pedantic code cleanup in tool dialogs 2013-11-29 19:55:05 +00:00
adelikat a7a28c000a Some low-hanging fruit in the IMovie refactor 2013-11-23 18:18:58 +00:00
adelikat 1372fa258f Start an IMovie interface as a first step towards a major movie object refactor. Also disable TAStudio, in preparation for a complete rewrite. Disabling is necessary because a lot of movie functionality will be ripped out that will render the tool useless for now. 2013-11-23 17:26:33 +00:00
adelikat e5d5a4ec90 Fix Post-Movie loadstating 2013-11-23 00:13:36 +00:00
adelikat ef79dccc43 refactor how movies are calculated to separate framerates into a dictionary 2013-11-16 21:05:59 +00:00
adelikat 9751fd5a1a Move interfaces and base implemenations from emulation to emulation.common 2013-11-04 01:39:19 +00:00
adelikat ed5cfe39a6 1.5x and trunk - fix scrub input hotkey, on trunk a slight refactoring now that more things are in client.common 2013-11-03 16:53:05 +00:00
adelikat 187e169de9 a round of cleanup on MianForm.cs, and an attempt to start organizing methods and variables to make it easier to pull out logic in future refactoring 2013-11-03 02:51:21 +00:00
adelikat f3bb7421ed detangle and move some savestate code to client.common 2013-11-01 20:53:47 +00:00
adelikat 3cda83c2bc Move a bunch of logic from MainForm.Movie.cs to MovieSession.cs which is more conceptually appropriate, this also means that movie handling logic (including complex movie loadstate logic) is moved to Client.Common 2013-11-01 18:52:26 +00:00
zeromus 6616a75cfb etc 2013-10-25 00:59:34 +00:00