Commit Graph

575 Commits

Author SHA1 Message Date
adelikat 698c6741ae Refactor IEmulator and remove the IController property, instead pass it as a paramter to the FrameAdvance() method 2017-05-01 20:09:11 -05:00
adelikat ded1c2d7b7 Break off BoardName from IEmulator into a separate IBoardInfo service 2017-04-30 21:01:54 -05:00
J.D. Purcell 083d9bec0e Throttle cleanup. 2017-04-30 20:38:10 -04:00
J.D. Purcell 0d853fd74a MainForm cleanups. 2017-04-29 15:18:08 -04:00
J.D. Purcell 3ebcaa8af0 Rewind cleanup / tweaks. 2017-04-29 14:04:19 -04:00
J.D. Purcell a72bdfe30f Allow rewind during movies. 2017-04-29 11:06:00 -04:00
J.D. Purcell 4848bb5cc3 MainForm: Remove unused line. 2017-04-24 10:34:13 -04:00
adelikat 13ca76f3f8 UI for changing SNES controller configurations 2017-04-15 20:34:32 -05:00
J.D. Purcell 16bf63ade8 Random cleanups. 2017-04-10 09:36:04 -04:00
shanehoman 58e1b52369 expose MainForm.SaveRam() method to lua 2017-04-02 23:12:38 -07:00
J.D. Purcell 07a8c2c027 Remove unnecessary rewind capture on ROM load. I reviewed the original commit where it was added, and it was only to initialize the delta rewind buffer. 2017-04-02 23:01:41 -04:00
J.D. Purcell 3f776dbf6f Rewind: Fix subtle off-by-one-frame bugs (only really noticeable when frame advancing). 2017-04-02 18:50:34 -04:00
J.D. Purcell c58d2929f8 SoundOutputProvider: Standalone mode to eliminate the need for an external buffer when used with SyncToAsyncProvider. 2017-03-25 16:26:46 -04:00
J.D. Purcell 231795c2cb Correction to previous AVI recording commit: buffer doesn't need to be so large. 2017-03-23 09:30:22 -04:00
J.D. Purcell 33d42152a8 Fix N64 audio weirdness in AVI recording. 2017-03-22 23:00:37 -04:00
J.D. Purcell 6cc5a914b7 Rewind cleanup. 2017-03-18 21:22:02 -04:00
zeromus edc3cea302 use gizmo to load roms from drag&drop and commandline (file>open already magically worked, due to explorer I guess) 2017-03-15 22:50:35 -05:00
feos 5c91c2f98c tastudio: allow exporting a named state 2017-02-24 21:58:41 +03:00
zeromus f458648fad improve rewind in tastudio by leaving editmode intact but taking care not to clobber frames. take special pains to ensure that (reverse) frame progress vs smooth rewind semantics stay as expected. 2017-02-16 00:29:28 -06:00
adelikat 2f3c0af4ea Open Rom dialog - mark intellivision as not experiemental and have it show up in release builds 2017-02-11 12:45:20 -06:00
zeromus ea2188dc46 make tastudio.setplayback correctly restore the recording flag after it finishes seeking from the greenzone to the target frame 2017-02-07 00:01:14 -06:00
zeromus 136c071ee8 12hz is too fast for default fps updates, i cant even read it. 2017-02-06 23:17:46 -06:00
zeromus a70e6e2fc4 fix #790 (Scroll wheel missing from input.getMouse()) 2017-02-04 20:52:32 -06:00
J.D. Purcell 52d604cb24 Fix turbo mode not disabling sound rendering (broken by 68a362c).
Apply FF&RW volume when unthrottled.
2016-12-20 22:41:59 -05:00
J.D. Purcell 970a9017d4 Fix typo in previous commit. 2016-12-18 13:03:58 -05:00
adelikat 40be0dd0b3 Refactor the way a Null ControllerDefinition is created 2016-12-16 23:34:18 -06:00
J.D. Purcell 7843664f68 Improve FPS smoothing to initialize with a real value instead of ramping up from zero. Re-initialize the FPS data after pausing or changing fast forward/rewind state to eliminate ramp-up and ramp-down in those cases. Only the initial behavior has changed; the FPS calculation/smoothing is otherwise mathematically identical. 2016-12-16 16:01:21 -05:00
J.D. Purcell 84480e4235 Fix sound bugs + cleanup. 2016-12-14 21:19:46 -05:00
J.D. Purcell afd55fdc6b Revert "Default to Sync sound instead of Async"
This reverts commit 6702f7795c.
2016-12-14 18:26:19 -05:00
alyosha-tas 6702f7795c Default to Sync sound instead of Async
It seems like 'CanProvideAsync' was always returning true so the else if at 1621 was defaulting to setting Async, which caused an exception later.

This seems similar to some TAStudio issues where different people are getting different results depending on Windows version, but I don't see any issue with not setting Async mode.
2016-12-14 15:07:04 -05:00
adelikat dd48864058 AsVideoProviderOrDefault() extension method 2016-12-12 13:47:11 -06:00
nattthebear dbdac5e3f2 Fix stuff or not 2016-12-11 22:37:28 -05:00
nattthebear a98316ba97 Soudn refactoring: Unbreak clock & vsync thrtottle 2016-12-11 18:35:42 -05:00
nattthebear ca60a33293 mess some stuff up 2016-12-11 15:01:42 -05:00
nattthebear eb72ff9053 Swag up NullSound 2016-12-11 14:07:12 -05:00
adelikat b73a500d6b Major sound provider refactor. Create a unified interface ISoundProvider, that is an IEmulator service and break it off of IEmulator. IAsyncSoundProvider was kept as a shim for now, for legacy cores that were inherintly async. 2016-12-11 11:15:00 -06:00
adelikat b697110098 Rename ISoundProvider to IAsyncSoundProvider to more accurately describe what the service does 2016-12-09 10:24:43 -06:00
adelikat 4d1629e271 Completely divorce IVideoProvider from IEmulator, use a NullVideo implementation in MainForm if a core does not provide one, Remove VideoProviderGlue. Note that NullEmulator does implement IVideoProvider still, since we like to have fun with that one 2016-12-07 13:21:18 -06:00
adelikat 9135aea773 Make a shim property in Mainform as a step towards reducing the use of Globals 2016-12-04 11:19:34 -06:00
adelikat 78bb41e3cf Mainform - make AV and Screenshot menus dependent on having a VideoProvider, and remove some usages of VideoProviderGlue 2016-12-04 10:50:28 -06:00
adelikat 5665de1797 Intellivision - add a "Fake analog" controller as the default controller for easier binding for casual play, but also leave a boolean option as well for more precise (TAS) control. Add a controller config dialog to select them. 2016-12-03 17:44:25 -06:00
feos 05d47a7318 tastudio: make analog hotkeys working, and their names fit in 2016-11-21 18:00:21 +03:00
feos 95dc2fd6b3 tastudio: move arrow keys logic to hotkeys
disallow sending Minus to MainForm
2016-11-20 23:26:13 +03:00
adelikat be93e78dd5 Intellivision - add .int files to the open file dialog in developer builds 2016-11-13 08:25:19 -06:00
zeromus 595a207c97 add new field to gamedb to specify which core should be used.
allow it to be 'neshawk' or 'quicknes'.

this should only be employed by end-users; we won't make those choices in the gamedb officially.

the quicknes blacklist is still implemented separately.

yeah, that's a lot of prioritization levels.
2016-11-12 19:23:54 -06:00
zeromus c7b639be28 apply ArcadePit idea: Let user change the string in the emulator title bar via a file
(but changed the format of the string to be more generally useful, and changed it to dll/custombuild.txt)
2016-11-12 18:49:03 -06:00
zeromus 0b4fc8b6a5 apply Arcade Pit work: "Extract NesCarts.xml for easier modification" 2016-11-12 18:32:18 -06:00
adelikat 60f84fa028 Merge pull request #706 from Meerkov/master
Fix Volume Controls
2016-11-08 10:42:27 -06:00
adelikat 8033a8c4fc Fix a null emulator check, fixes dump status icon not updating after a failed rom load 2016-11-07 14:26:02 -06:00
adelikat ef6c9131c6 Fix behavior when loading a new rom when a cheat is loaded, fixes #550 2016-10-06 13:57:39 -05:00