Commit Graph

1371 Commits

Author SHA1 Message Date
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