Commit Graph

180 Commits

Author SHA1 Message Date
brandman211 a38afd4fb2 -Fixed NES movie mnemonics.
--.FM2 is no longer a valid movie extension, so it is no longer counted as such in IsValidMovieExtension.
-Reused the code from PCE controller setting for NES.
-Seem to support 4 controllers for the NES now.
-General code cleanups.

TODO:
-Input from the 3rd and 4th controllers doesn't seem to be polled properly. Figure out what's wrong here.
-The copypasta from PCE to NES could probably be made into one function. The same could be said about many other portions of this code...DRY.
-Now that the mnemonics are fixed, I will have to write a proper converter for FM2.
--Once this is done, I will try the same for PCE, even if it can currently run natively.
---Once this is done, IsValidMovieExtension might as well be removed in favor of only accepting .TAS files and converting everything else.
2012-02-14 04:28:47 +00:00
andres.delikat 823edd2f67 store lag frame information into movies. Have TAStudio highlight lag frames in pink. Currently only hooked up for the NES core. 2012-01-08 23:51:53 +00:00
andres.delikat 37619ba147 preliminary work for mnemonics set up for Genesis. Doesn't work yet though since it will need core controller work set up 2011-12-24 15:35:52 +00:00
andres.delikat fbc365c4d2 Fix loading of post movie savestates (savestates made while in movie finished mode). Complete fix When in read-only. While in read+write it throws a loadstate error. This isn't ideal but at least prevents possible movie corruption. 2011-09-29 01:46:35 +00:00
andres.delikat 6bbab41b0c PCE - Implement PCECD system id in core and in game info. Also set cancel property of LogWindow winform 2011-09-24 17:05:34 +00:00
andres.delikat edb40f4087 Movies - fix bug where rerecord count value was getting added as a comment on load 2011-09-24 16:09:40 +00:00
andres.delikat a827bb7838 Remove a debug oncreen message in movie savestates 2011-09-18 17:10:10 +00:00
andres.delikat a30a5290ca clear saveRam when loading a movie. Add movie name to saveram default path generation so that movies do not interfere with users saveram files 2011-09-17 14:23:23 +00:00
andres.delikat 21d396f9bc Fix minimum size on all winforms, also set max size where appropriate, fixed anchoring & resizing issues, and other misc. display cleanup 2011-09-11 01:01:40 +00:00
andres.delikat 5eba8bc7f3 Movies - fix problem with NES loadstate & timeline checks that caused the Frame value to not parse properly. Also add messages to the catch statement in the event of parse failure. 2011-09-10 02:08:16 +00:00
andres.delikat 45609f4e88 Movies - fixed major bug in rerecording logic. Loadstate was truncating movie input based on global.emulator.frame BEFORE loading that value! Thus loading a state (in record mode) from an event later than the current frame count was truncating the input, then loading the actual savestate. Movie loadstate now truncates based on the state's frame count 2011-09-07 01:18:58 +00:00
andres.delikat a787fe3c60 Movies - Fix a major logic flaw in the CheckTimeLines() logic. Should compare from 0 - state frame count, not 0 - length of state input log 2011-09-07 00:40:42 +00:00
andres.delikat 984abbb869 Refix bind savestates to movies option 2011-09-05 00:50:50 +00:00
andres.delikat bf76e1e7e0 Refix recording movies from "Now" so that the StartsFromSavestate flag gets properly stored into the movie file 2011-09-04 19:04:00 +00:00
andres.delikat a84f881c5c Movies - Remove UserMovie and change all references to it to Global.MovieSession.Movie, fix error in CheckTime Line logic, read-only savestates should now work 2011-09-03 18:07:30 +00:00
andres.delikat 276c759d88 Fixed Loadstate stream issues, rerecording is now possible again 2011-08-20 19:27:00 +00:00
kylethomson 2243c7dcad Fixed Multitrack-load crash.
Also, read-only can't be toggled while no movie active. 
Same for multitrack.
2011-08-17 02:06:50 +00:00
andres.delikat d10f38af5d Remove autofire from IController & inherited objects other than Controller 2011-08-09 00:57:56 +00:00
andres.delikat 9b2ba5c85c Basic implementation of Global.ActiveController, uses an ORAdapter to OR against Active Controller. Still TODO: setting up autofire controllers for platforms and a UI in the Controller Config 2011-08-09 00:51:46 +00:00
andres.delikat 0d01af5c7b Refactor autofire, remove the autofire adaptor. Added an autofire bool to IController and implemented it in the Controller object. Setting to true will turn the controller buttons into autofire buttons 2011-08-08 23:35:13 +00:00
andres.delikat d92c27f89d Autofire Input Adaptor, currently no UI for it 2011-08-07 23:26:06 +00:00
andres.delikat 64e38e83c8 Movie Loadstate - GUID checking in read-only mode + fix a crash bug 2011-07-31 17:35:02 +00:00
andres.delikat 3481943b74 Overhaul movie savestate logic - cleaned up a lot of code, implemented GUID, Future Event, and Timeline checks to read-only situations. Prevented loading of state if an error occurs. Still TODO - GUID checks in read+write mode 2011-07-31 16:41:27 +00:00
andres.delikat ce3bb25409 Movie object cleanup, movie savestate handling cleanup, save GUID into movie savestates 2011-07-31 01:15:14 +00:00
andres.delikat 60a4ea4426 Refactor movie code - a Loaded property, removed a lot of code that was a work around for this needed feature, movie can not write to disk unless this property is true 2011-07-30 23:59:31 +00:00
andres.delikat 2e68314e01 Movies that start from savestate now supported. Record Movie dialog "Record from Now" option implemented. ResetFrameCounter() added to IEmulator and implemented in all existing cores 2011-07-30 20:49:36 +00:00
zeromus 5580295085 movie input refactoring 2011-07-24 23:14:16 +00:00
zeromus e4f9f76198 fix ti-83 virtual keypad 2011-07-24 20:23:27 +00:00
zeromus 198431b8a2 add StickyXORAdapter 2011-07-24 19:52:13 +00:00
andres.delikat 72699b4ad7 another round of refactoring the Movie object 2011-07-17 17:52:39 +00:00
andres.delikat e6b2c794d4 Refactor the movie object, replacing Getfunctions with public properties, renaming of some functions, removing a duplicate function, other misc things 2011-07-17 14:39:15 +00:00
andres.delikat ee713acded Edit Subtitles Form - minor tweaks 2011-07-16 13:31:36 +00:00
andres.delikat b551d9dbdd Movie Subtitles - in Edit Subtitle dialog, parse color value as hex, in render panel read the subtitle color 2011-07-16 02:11:51 +00:00
andres.delikat 7293cd05cc Add error messages to movie convert functions, and other small cleanups, refactor calls to them to handle error messages 2011-07-14 01:12:18 +00:00
andres.delikat a8c66418e7 Movie Convert - started implementing an error message system, did FCM and MMV 2011-07-13 02:11:20 +00:00
zeromus 2c683dc90a dont crash on exit while writing inputlog 2011-07-13 01:45:40 +00:00
andres.delikat a228e05f38 Lots of little fixups to movie code, disable Disable Message config in Message Config as I won't be implmenting that before release 2011-07-13 01:29:13 +00:00
andres.delikat 4c5b48fd7c Hacky fix for loading PCE movies that are less than 5 players. It will read 1-4, but will output 5 once the movie is saved again by the emulator. At some point we should probably support < 5 players for saving to disk, given that 4 players worth of text is a drain. 2011-07-13 00:18:47 +00:00
andres.delikat 93fcd7d94f Edit Comments/Subtitles dialogs - limit max height of auto-height adjustment 2011-07-10 18:36:10 +00:00
zeromus 2425b3c87a fix some input things 2011-07-10 06:24:04 +00:00
zeromus 4991b95def refine input stuff 2011-07-10 02:14:58 +00:00
andres.delikat 29510ddd58 Fix saving of header data from record movie dialog, small fix for inputlog header data 2011-07-06 01:53:15 +00:00
andres.delikat 945577dadd Movie code clean up - document PreLoadText(), put movie truncation in LoadLogFromSavestateText() since it was rudely removed from what is now CommitFrame() 2011-07-05 23:33:13 +00:00
andres.delikat 68d0ff94eb Refactor movie writing code. MovieHeader, MovieLog, and SubtitleList all have their own write methods now instead of the Movie object doing all of the work. Conceptually these 3 objects should be autonomous and the Movie object is simply an object that manages a collection of these objects. 2011-07-05 23:16:54 +00:00
andres.delikat fed74b17b2 Subtitle editor touchups - Make color cells the color they are representing, display color in hex, put try/catches + error messages if trying to parse erroneous data, tooltips for columns 2011-07-04 20:34:53 +00:00
andres.delikat 26569dab58 More work on subtitle maker, implmeent context menu "Add Subtitle" which will open subtitle maker and set frame to the current frame 2011-07-04 19:20:11 +00:00
andres.delikat 8d333fc04c Start subtitle maker form 2011-07-04 18:32:57 +00:00
andres.delikat 505a8baab4 Subtitles - finish parsing all parameters, make render panel use all parameters but color (for now) 2011-07-04 18:04:56 +00:00
andres.delikat 7c09ca4ae3 improvements to subtitle parsing 2011-07-04 17:01:17 +00:00
andrewjpritchard 968c07e7d3 Preliminary VBM conversion. 2011-07-04 13:54:17 +00:00
andres.delikat b6bd94242f Subtitle & Comment editors - clear out old comments & subs before saving the new list 2011-07-04 13:37:51 +00:00
andres.delikat 88f14d07d8 Fixes to comment loading/editing/saving 2011-07-04 13:31:34 +00:00
andres.delikat a95ffcf2f9 Hooked up comment editor/viewer to play movie and context menu, various tweaks to movie code, more progress implemented comment loading/editing/saving 2011-07-04 02:50:38 +00:00
andres.delikat 384a4a61b6 Start movie comments editor 2011-07-04 01:57:18 +00:00
andres.delikat bf5fa3356a Edit Subtitles form - Save subtitles on exit 2011-07-04 01:23:32 +00:00
andres.delikat f886b65015 Write subtitles to movie files 2011-07-04 00:49:37 +00:00
zeromus 0aa234282e phase 1 of fixing up controller logic. tell me how terribly ive broken the movie code. might want to fix it before moving on to phase 2 or decide to revert. 2011-06-27 05:31:46 +00:00
andres.delikat d3f4da39a3 Subtitle viewer implemented for play movie dialog, context menu for edit/viewing subtitles (depending on read only status). Still TODO: save changes when in edit mode 2011-06-26 21:11:12 +00:00
andres.delikat 3235fc1618 Start a subtitle viewer/editor form and hook to the subtitle button on the play movie dialog 2011-06-26 20:26:37 +00:00
andres.delikat 3a15dd6bb9 Basic subtitle loading and rendering. Still lots of todos but basic functionality now exists 2011-06-26 16:39:48 +00:00
andres.delikat 61e82793e9 Start movie subtitle system 2011-06-26 14:36:41 +00:00
andres.delikat 4247b43b07 shut up some warnings 2011-06-22 17:41:59 +00:00
andres.delikat f5014946db status strip - pause icon implemented, movie icon put in but hidden and unimplmeented. Dump Error warning icon put in and disabled, needs to be implemented 2011-06-19 20:50:46 +00:00
andres.delikat fc48e0e4f7 Record Movie Dialog - add header info on record, add author box and hook it up, dialog fix ups 2011-06-19 14:28:13 +00:00
andres.delikat c6a5c7e9b6 change references of Global.Game.Name to Global.Game.FileSystemSafeName for situations that use it to build paths 2011-06-18 21:39:53 +00:00
andres.delikat b95264e9bf Make movie class handle automatically backing up a movie before the first time it alters it, add flag to MultiClient to toggle the movie backup feature 2011-06-18 19:16:05 +00:00
andres.delikat 67f726eae6 Movie backup function added to movie class, currently only hooked to a context menu item of main form 2011-06-18 18:27:51 +00:00
kylethomson c228699255 Getting closer. 2011-06-17 02:43:22 +00:00
andres.delikat 9e7510894e Don't reference usermovie in the movie class 2011-06-17 01:50:51 +00:00
kylethomson e9942dc101 Multitrack overwrite works. Now to fix playback. 2011-06-16 03:56:40 +00:00
kylethomson 882562c452 Multitrack for PCE done, if my idea works. Now to hook up hotkeys. 2011-06-16 02:29:45 +00:00
kylethomson b5b853196e 2011-06-16 01:49:12 +00:00
kylethomson a4fe9754c0 Look at where the error is - This is what I need to access. 2011-06-16 01:35:42 +00:00
kylethomson 445be7ca24 Oopps, forgot to add multitrack file 2011-06-16 01:20:19 +00:00
andres.delikat f36da18f97 Small fixups to movie & tastudio code 2011-06-12 18:31:42 +00:00
andres.delikat 59173e4e44 Some virtual pad progress, virtual pad dumps input into movie file when recording, currently doesn't feed it to the core though (lol). Virtualpad object set up for a nes controller 2011-06-12 14:42:50 +00:00
andres.delikat 2fcb35a4e4 Input Config - Fix NES select & start (I had the saving of the key mappings flip flopped) 2011-06-09 00:58:09 +00:00
andres.delikat c6ddf5fd68 new Movie creates a GUID 2011-06-08 00:42:51 +00:00
andres.delikat a9c8756bd1 Some work on Movie object and convertSMV started 2011-06-08 00:25:16 +00:00
andres.delikat 542d54a9d2 Movie Convert - make compile 2011-06-06 10:41:24 +00:00
andres.delikat 89ff0c8927 ConvertFCM - remove some erroneous code 2011-06-06 02:07:53 +00:00
andres.delikat 8d1a2cb2cd Fix bugs in MMV convert 2011-06-06 01:08:29 +00:00
andres.delikat 4c36d1abda basic mmv conversion done. Still a lot of little todos with header info & error checking 2011-06-06 00:18:42 +00:00
andres.delikat a189411d26 Progress on convertFCM and beginning of convertMMV 2011-06-05 16:29:09 +00:00
andres.delikat 5ad6e0b602 Begin Convert FCM tool. Reads most header stuff, no input log yet. Only hooked up to Drag & Drop atm 2011-06-05 02:50:50 +00:00
offspring131313 4ea39c8525 Added a CompareTo function for Movie objects, and created a basic insertion sort for the play movie dialog. 2011-05-24 01:19:42 +00:00
andres.delikat 4a28b282f8 Fix typo that caused loadstate hotkey mapping to display on load config menu item, fix so that movie log loading from savestate doesn't crash if text line is null 2011-05-23 02:15:16 +00:00
andres.delikat 1d0a504704 Remove an erroneous duplicate message in savestate(), remove a debug message in movie 2011-05-23 01:23:32 +00:00
zeromus 1700c22b17 dont crash when movies directory is missing 2011-05-22 17:41:22 +00:00
andres.delikat f8c1791908 GetMnemonic now looks at the frame count and truncate the movie if it is less than the movie length. Resuming recording now works 2011-05-19 02:15:55 +00:00
andres.delikat 97ef68e64e Record movie dialog now allows user to type in name of file to record, and will auto fill in directory path if user does not. Play movie now uses the PreLoad function so length calculation is significantly faster 2011-05-18 01:49:20 +00:00
andres.delikat 250f424629 Start a MovieConvert class for converting fcm, mmv, and such to .tas files 2011-05-18 01:30:25 +00:00
brandman211 6e98bfc978 Created an efficient frame calculation. 2011-05-18 01:24:26 +00:00
andres.delikat 2b41592c9b Load rerecord count when loading a movie 2011-05-18 00:08:51 +00:00
andres.delikat 5a082bad2f Save input log into savestates. Also add more informative messages & frame counter for better debugging 2011-05-17 22:44:31 +00:00
andres.delikat e5af4418da Movies - CheckTimelines function, disabled until rerecording is smoothed out better 2011-05-17 01:10:04 +00:00
andres.delikat 85e52c3bcb Some refactoring of savestate + movie code and laid out the logic for how these situations should be handled 2011-05-16 15:38:48 +00:00
andres.delikat 4a549631e5 Movie class - refactor time calculations. Make PCE_NTSC = PCE. Remove any 60.0 or 50.0 const ints in favor of the default case. Made a decision that time should be calculated based on the console framerate not the fps at which bizhawk will emulate. Thus SMS uses a ~60.1 fps 2011-05-16 13:56:22 +00:00
offspring131313 386b26ccbe Reverted some changes I thought was improving the readability, but was really just breaking the correctly programmed stuff =D 2011-05-16 07:44:03 +00:00
beirich 003a71cb5a PAL PCE has the same timings as NTSC 2011-05-16 04:07:05 +00:00