Commit Graph

768 Commits

Author SHA1 Message Date
alyosha-tas b65d87f40c
Add files via upload 2018-11-18 09:03:03 -06:00
adelikat 8582023346
Merge pull request #1291 from TASVideos/force_DE_onMovieRecord
EmuHawk: Movies and DeterministicEmulation - ensure this is enforced …
2018-11-18 08:06:34 -06:00
zeromus 7a72bf72e6 experimental: add %rom% to path manager, so files related to a rom can be located relative to the rom
also refactored how %exe% worked because it blew my mind
2018-11-14 19:04:02 -05:00
zeromus 4e76bd97d1 fix regression from 2948d7597a loading archive roms 2018-11-04 05:25:24 -05:00
zeromus 2948d7597a fix breakage from june of opening libretro cores (fixes #1357)
@asnivor please check loading bundler XMLs
2018-11-02 15:48:30 -04:00
Asnivor 2565f49c89
Merge branch 'AmstradCPC' into master 2018-09-19 14:56:41 +01:00
Asnivor 16d68ea813 ZXHawk: debug only zx-state snapshot export 2018-09-10 10:05:49 +01:00
upthorn 6eed08f965 An example plugin. Hard-coded for now. 2018-09-03 19:31:43 -07:00
feos 0b36d49bf2
Revert "Resize unattended video if zoom factor >1" (#1295)
Using unchangeable hardcoded magic numbers that aren't used anywhere is bad.
2018-08-23 20:51:23 +03:00
Asnivor 25347dd344 EmuHawk: Handle SaveRAM IO errors - #1241 2018-08-21 16:09:56 +01:00
Asnivor c1c34d3794 EmuHawk: Movies and DeterministicEmulation - ensure this is enforced whenever a movie is queued - #1290 2018-08-21 14:36:07 +01:00
Asnivor 1268b09849 Emulation.Common: Additional method added to inspect *.dsk images in order to work out whether they are ZX, CPC or AppleII 2018-07-19 13:46:37 +01:00
Asnivor ac0aae4afb CPCHawk: UI menus 2018-07-18 13:53:08 +01:00
Asnivor 531833c7b0 CPCHawk: Initial project outline (may or may not come to something eventually) 2018-07-03 14:53:09 +01:00
Asnivor 8979b0abe1 EmuHawk: fix exception on multidiskbundler xml check when file is within an archive 2018-06-22 17:42:17 +01:00
Asnivor 1ade5d0b49 ZXHawk: Prep for release 2018-06-22 16:55:57 +01:00
adelikat 25c6639aa2
Merge pull request #1152 from Asnivor/master
Partial fix for issue #1075
2018-06-22 10:47:48 -05:00
Asnivor 625f063861 ZXHawk: Added wav tape image support 2018-06-22 14:40:40 +01:00
Asnivor b81a7539cf ZXHawk: Added Compressed Square Wave (CSW) tape image support 2018-06-22 13:23:33 +01:00
Asnivor 50123bf8e2 ZXHawk: Experimental PZX tape image support 2018-06-20 15:03:11 +01:00
alyosha-tas a992e988b2
Merge pull request #1218 from TASVideos/ZXHawk-new-ULA
Zx hawk new ula
2018-06-13 08:40:26 -04:00
Asnivor 651ec7f122 ZXHawk: CoreNameStatusBarButton tooltip shows emulated spectrum model 2018-06-12 11:08:03 +01:00
Asnivor 13a9c5bdc4 ZXHawk: Added POKE memory menu option 2018-06-12 10:16:43 +01:00
Vilsol db8b051b00 Resize unattended video if zoom factor >1 2018-06-02 23:18:45 +03:00
Asnivor 7aaa5e8a52 ZXHawk: +3 disk ready for testing 2018-04-26 12:57:21 +01:00
zeromus a7197b348e fix bug where autodump (and maybe lua-instructed client exits) would vanish the window but linger the process 2018-04-08 01:48:47 -05:00
Asnvior 2be76a405a Fix: rom status icon 2018-03-22 14:41:21 +00:00
Asnivor e2eac983a1
Merge pull request #1149 from TASVideos/master
Bringing ZXSpectrum branch up to date with master
2018-03-19 15:52:55 +00:00
Asnivor 0ac17f2d1e UI - added Core Emulation Settings menu 2018-03-16 14:33:18 +00:00
Asnivor 7c9c39417b UI - added joystick settings menu 2018-03-16 11:58:02 +00:00
zeromus b179a30d99 Merge remote-tracking branch 'remotes/origin/pr/1080'
# Conflicts:
#	BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj

merges PR #1080
closes PR #1080
(let's see if either of these can do it)
2018-03-13 16:33:53 -04:00
feos 7fedbac9c3 lua: fix #1119 2018-03-09 13:35:42 +03:00
Asnivor 7c82d6d526
Merge pull request #1106 from TASVideos/master
Bring ZXSpectrum branch up to date with master
2018-02-06 08:45:48 +00:00
vadosnaprimer eea6740722 lua: client.isturbo() and client.isseeking() 2018-01-06 13:30:47 +03:00
vadosnaprimer 68a0fcf408 move avi writer call so it captures lua messages
I think it doesn't outrun anything critical this way
2018-01-03 19:35:37 +03:00
Ashafix 4d063f6061 new library for communicating with other programs via Lua 2017-12-24 00:24:22 +01:00
Asnivor f92269657d Added core UI menu and fixed up settings / syncsettings 2017-12-04 15:40:27 +00:00
alyosha-tas dab3b85599
Merge pull request #1071 from Asnivor/speccy
ZXHawk Initial
2017-11-28 18:08:48 -05:00
Asnivor d012472999 Initial commit. 48K spectrum only. 2017-11-23 17:26:15 +00:00
Tastyfish 5a0cf817ee Make Reboot Core not crash after Close ROM 2017-11-20 21:50:44 -05:00
Asnivor 166edd7cba Added mds to file filters 2017-10-25 17:10:26 +01:00
Asnivor 6d87be1396 Experiemental MDS/MDF Support 2017-10-25 17:06:16 +01:00
zeromus 74d1eba368 fix Broken Jump List #1015 2017-10-03 15:26:36 -05:00
zeromus 1250b72bce tidy autoflushing stuff 2017-08-23 10:32:17 -04:00
shanehoman 85575eae82 Standardize as AutoSaveRAM
- Rename files
- Add path to PathManager
- Alter config UI
Set default settings
- ASR disabled
- 5m preselected
Display OSD messages when ASR enabled
- SaveRAM is older than ASR
- SaveRAM doesn't exist but ASR does
2017-08-19 23:14:08 -07:00
shanehoman bdb197ac23 Rewrite FlushSaveRAM to write the newest sram to disk first, then move older data.
Moved autosave timer sets to save/load sram methods
Manual saves won't reset the autosave timer
Remove excess ticks when lowering the autosave timer
2017-08-18 22:42:28 -07:00
shanehoman 89059673f0 Configure autosave in Config -> Customize... -> Advanced under the SaveRAM backup option
reduced options to 5s for HUDs or other RAM watchers or 5m, typical backup save timing in visual studio and office.
Added option for custom autosave interval
Split Autosave enable/disable and time settings
Fixed hotkey display for Flush SaveRAM (menu was reading the wrong key in HotkeyBindings)
2017-08-18 21:02:51 -07:00
shanehoman fce06a7b5b don't overwrite the orderly shutdown SaveRAM files, keep a separate autosave channel 2017-08-18 17:15:48 -07:00
shanehoman acd194128e automatically save saveram every 1/5/15/30/60/300s
fun fact: a 1 frame flush timer is workable on a RAM disk
2017-08-18 15:36:26 -07:00
adelikat cd5f6e66e1 Atari 7800 - sort out system id stuff 2017-08-04 17:17:14 -05:00
zeromus 94e2fe2a10 fix displaymanager crashes when rebooting snes9x (and maybe others) while paused (due to unset virtualsize). 2017-07-27 22:42:13 -05:00
nattthebear 569730a61b picodrive: region select. closes #929 2017-07-22 10:55:17 -04:00
nattthebear cf8013af4a sameboy: Add more features for the merciless slave driver 2017-07-19 18:48:11 -04:00
Ashafix d42962a1b4 removed unnecessary code duplication 2017-07-17 08:23:58 +02:00
Ashafix a71255b4b2 updated arg parser 2017-07-17 01:28:22 +02:00
zeromus 60b9825f64 fix race condition in test of active window from input thread (which was a bad idea in the first place) which can throw null references in unlucky cases (fixes #917) 2017-07-15 22:09:50 -05:00
Ashafix e2e278eea9 added command line arguments parser 2017-07-14 13:04:43 +02:00
adelikat 1990c4f8c2 disable Genesis menu when picodrive is the GEN core, since it doesn't currently support anything in the menu 2017-07-13 11:56:26 -05:00
adelikat d65368d397 add .the 32x file extension to the Open Rom dialog 2017-07-13 11:53:19 -05:00
nattthebear ff58de56a1 TSTHawk: Settings? 2017-07-11 18:12:03 -04:00
Maximilian Peters bbcea298d7 Added support for Lua scripts via the command line 2017-07-06 01:06:31 +02:00
adelikat 4982af7521 Merge branch 'master' into waterbox2
# Conflicts:
#	BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.ISaveRam.cs
2017-06-19 10:04:46 -05:00
nattthebear aac25082d0 Video dumping: Store the audiosync option in configuration, and default it to true. If the emulator's av output is perfect, the two will produce identical results. In every instance I'm aware of where the emulator's av output is not perfect, the audio sync mode will produce better results. 2017-06-16 14:11:43 -04:00
alyosha-tas 5a44c10a79 Update MainForm.cs 2017-06-16 10:34:35 -04:00
nattthebear 803190e6b4 protip: When refactoring, it's not OK to just make it not work. Fixes #873 2017-06-15 20:40:38 -04:00
adelikat 796f9ddaa7 snes9x - support snes obj toggle hotkeys 2017-06-14 17:28:02 -05:00
adelikat 6660223459 snes - support bg toggling hotkeys on snes9x. snes9x doesn't support individual obj setting so those hotkeys just do nothing for now.. That probably needs to be addressed better. 2017-06-13 20:56:47 -05:00
adelikat 97d7dd7f42 merging master into waterbox2 this one was messy may be regressions 2017-06-13 08:16:25 -05:00
alyosha-tas ad1e222cbd Create MainForm.cs 2017-06-11 18:29:12 -04:00
alyosha-tas 16163d959e Add files via upload 2017-06-11 18:17:34 -04:00
adelikat 4ae0b2cd22 Merge branch 'master' into waterbox2
Conflicts:
	BizHawk.Client.EmuHawk/MainForm.Events.cs
	BizHawk.Client.EmuHawk/MainForm.cs
2017-06-04 18:18:11 -05:00
adelikat cd7e6f4f67 add c64 file extensions to open file dialog for release builds 2017-06-03 14:20:12 -05:00
nattthebear f96a7abb94 ngp: connect saveram. due to the way this is implemented in neopop, connecting it greatly increased the size of savestates, which may or may not be worth fixing. 2017-06-03 07:58:14 -04:00
adelikat 4a088ba3ff NGP - file extensions for Open Rom dialog 2017-05-31 20:47:27 -05:00
nattthebear 051382450e ngp: settings that theoretically work 2017-05-31 17:29:45 -04:00
adelikat 55edb3e37b add .vb to open file dialog 2017-05-29 13:42:30 -05:00
nattthebear f99a080e60 Merge remote-tracking branch 'origin/master' into waterbox2
# Conflicts:
#	BizHawk.Client.EmuHawk/MainForm.Designer.cs
#	BizHawk.Client.EmuHawk/MainForm.cs
2017-05-29 14:35:30 -04:00
nattthebear 391160ebf9 vboyEE: settings and syncsettings 2017-05-29 13:50:40 -04:00
nattthebear 61aa4f5df3 Connect Snes9x controllers, syncsettings, and regular settings 2017-05-28 10:18:20 -04:00
adelikat fd1338a46f Mainform - restore Autohawk click event, remove some unused methods 2017-05-22 14:23:13 -05:00
adelikat a6414ff05c Mainform cleanup round 2 2017-05-22 14:23:13 -05:00
adelikat 0796c14046 Misc mainform cleanups 2017-05-22 14:23:13 -05:00
adelikat 8062faf40b organize mainform menu item event methods 2017-05-22 09:04:47 -05:00
adelikat c8d6ef0628 since Global.AutofireNullControlls was only being used by Mainform, move it there instead of having in Globals 2017-05-22 07:30:34 -05:00
adelikat f093ad8606 C64 - multi-disk support 2017-05-15 19:52:05 -05:00
adelikat 120f70b83b When key priority is Hotkey over input, account for hotkeys that are not handled through the CheckHotkey() method 2017-05-15 13:11:18 -05:00
adelikat 58500fef0c Add Toggle Key Priority hotkey 2017-05-14 13:53:44 -05:00
nattthebear ebe789eed2 heh 2017-05-10 07:45:23 -04:00
J.D. Purcell e72aa11d5d Fix rewind crash when cancelling out of archive file picker dialog. 2017-05-08 22:50:45 -04:00
zeromus ac767a2acc clarification to the saveram flushing system 2017-05-06 17:50:36 -05:00
alyosha-tas 03f5403b71 Check if save ram exists before writing it 2017-05-06 18:42:09 -04:00
adelikat 59139ab266 Spell out Numerator and Denominator 2017-05-05 11:25:38 -05:00
adelikat 62a13d961d Move VsyncNum and VsyncDen out of CoreComm and into IVideoProvider 2017-05-05 11:21:37 -05:00
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
Meerkov 6a9510c9ae Re-enable Thread Sleep when not in Absolute Zero mode 2016-09-29 01:19:25 -07:00
Meerkov 129fdf2a68 Revert "Allow Fast Forward Volume to be Louder than Normal Volume"
This reverts commit 4bd6608940.
2016-09-29 01:10:23 -07:00
Meerkov 9eafac83d4 Improve Absolute Zero Mode by 15-30%
Short-circuits out of the Render function in the main program loop.

With an NES game running at 8500 FPS before, this brings it to 9700 FPS.

With no game loaded, running at 45k FPS, this brings it to 60k FPS.
2016-09-29 00:57:32 -07:00
Meerkov 151c88feb8 Removes busy-wait
This sleep doesn't appear to be needed. It's just busy waiting.

We save CPU cycles by not doing this.
2016-09-29 00:18:55 -07:00
Meerkov 1b8d32e82f Refactor the FPS Counter to it's own function
1) Takes the block of code that calculates the string to print and gives
it it's own function.

2) Stores a static display variable. Fixes incorrect FPS while fast
forwarding as a result.

3) Reduces updates per second to 12 from 16.
2016-09-29 00:04:39 -07:00
Meerkov 68a362c8ff Fix subtle bug in renderSound
Bug as follows:

renderSound was true when any of the following:
_currAviWriter!=null&&_currAviWriter.UsesAudio
!IsTurboing || _currAviWriter!=null

So, if _currAviWriter!=null, it didn't matter if it has the UsesAudio
flag on or not.
2016-09-28 23:14:18 -07:00
Meerkov 4bd6608940 Allow Fast Forward Volume to be Louder than Normal Volume
Allows FF Volume to override the normal volume, instead of multiplying
it (which could only decrease the volume).
2016-09-28 22:40:14 -07:00