Commit Graph

17819 Commits

Author SHA1 Message Date
feos 9e0b136b7e mgba and linux 2020-07-26 13:26:13 +03:00
YoshiRulz d8a92af617
Move Comm and Input Lua libraries to Client.Common 2020-07-26 05:38:55 +10:00
YoshiRulz 2b50f4f112
Cleanup ApiContainer 2020-07-26 05:34:58 +10:00
YoshiRulz 911cb096de
Merge ApiContainer and ApiSubsetContainer
(also merge DelegatingLuaLibrary and DelegatingLuaLibraryEmu)
Not sure why this wasn't done earlier, there doesn't seem to be any technical
roadblocks. The contract of the API provider requires an implementation for
IEmuClientApi et al. so they (all 15 interfaces) are free to be used from
Client.Common.
2020-07-26 05:29:04 +10:00
YoshiRulz 1fa7395e20
Screw around with networking helper init 2020-07-26 05:15:56 +10:00
YoshiRulz 1912851186
Expose networking classes in CommApi, delegate its Lua ver. to ApiHawk
HttpTest/HttpTestGet in the .NET API now return null instead of throwing (Lua
still throws)
2020-07-26 05:03:58 +10:00
YoshiRulz da5f76967f
Inline TestGet 2020-07-26 05:01:58 +10:00
YoshiRulz a931d75143
Add string overload for WriteToFile
and also use UTF-8 instead of ASCII to match reads -_-
2020-07-26 04:45:59 +10:00
YoshiRulz b7eb90f990
Add public prop for setting IP+port simultaneously 2020-07-26 04:34:06 +10:00
YoshiRulz 6acf4ae6fb
Tiny ToolManager.Load cleanup 2 electric boogaloo
see 2d6bac879, 7c3ccd664
2020-07-26 03:49:59 +10:00
adelikat 1f6ead6354 now that restore is on mouse up instead of mouse down, we need to auto-unpause the emulator (if it were paused before editing input) on mouse up instead of mouse down. Mouse down was causing unpausing while painting which caused input to be added without invalidating greenzone. This code introduces unpausing as long as there is not a need to invalidate (if the user only painted down). If the user paints up beyond the original mouse down event it will invalidate and seek to the original mouse down frame and pause. 2020-07-25 10:42:07 -05:00
adelikat 7c3ccd6646 Revert "Tiny ToolManager.Load cleanup"
This reverts commit 2d6bac8798.
2020-07-25 09:26:47 -05:00
adelikat 4a6b3e407a TasMovie - InvalidateAfter - flag changes if Lag OR States were invalidated, increment rerecords on only on state invalidation not lag validation, this may address 2168 2020-07-25 09:09:43 -05:00
adelikat 4439310250 remove unused method 2020-07-25 08:39:40 -05:00
zeromus fd30826655 experimental ffmpeg downloading: in place of the ffmpeg encode settings is a download form. This downloads it to the prescribed local location. It then checks to make sure it is the EXACT required version -- the only version we support 2020-07-24 22:25:00 -04:00
zeromus b24a4ecc09 rename to FFmpegService 2020-07-24 22:25:00 -04:00
zeromus dd01c26c92 move FFmpeg sources to FFmpeg service 2020-07-24 22:25:00 -04:00
zeromus 72ad0d8d74 copy DiscDecoding.cs to FFmpegService.cs in another project 2020-07-24 22:24:59 -04:00
YoshiRulz 2d6bac8798
Tiny ToolManager.Load cleanup 2020-07-25 08:44:50 +10:00
YoshiRulz 0fc3ac2105
Don't need this anymore
no idea when that happened sorry
2020-07-25 08:30:15 +10:00
adelikat b0c76f28ca PCETileViewer - remove unnecessary load event 2020-07-24 14:50:01 -05:00
adelikat 0ed95429cb simplify some closing closing logic in some tools 2020-07-24 14:36:34 -05:00
adelikat 4f2bf8071e fix a few tools I missed in previous commit 2020-07-24 14:32:29 -05:00
adelikat e7e5ebfa90 have tool manager automatically add a Close button to any tool with a File menu, removes a lot of boilerplate from tools, also gives consistency, since half the tools had Close, half had Exit and not all had the shortcut display string 2020-07-24 14:21:53 -05:00
adelikat d67f97c4e1 Tasutido - slight simplification 2020-07-24 13:20:24 -05:00
adelikat a51eba88da move some repetitive logic from tools to the RollColumns class 2020-07-24 13:17:03 -05:00
adelikat 4a3e2113af convert RamSearch to IToolFormAutoConfig 2020-07-24 12:29:26 -05:00
adelikat f1a9ba7a08 Ram Search - watch options and settings menu item names 2020-07-24 12:11:34 -05:00
adelikat c26659187e convert RamWatch to IToolFormAutoconfig 2020-07-24 12:03:23 -05:00
adelikat 42864977cb Convert cheats tool to use IToolFormAutoConfig 2020-07-24 11:52:44 -05:00
David Ackroyd a416841770
clone x times ()
* tasstudio: clone sequence of inputs x times

* extend frameprompt so that you can put in a custom messagfe

* making FramesPrompt designer compatible
2020-07-24 10:18:15 -05:00
YoshiRulz e36098becf
A little dedup 2020-07-24 13:33:12 +10:00
adelikat 39424891b4 virtualpads - add another constructor overload to simplify schema classes more 2020-07-23 17:42:36 -05:00
adelikat 6b921c91fb remove another unused image 2020-07-23 17:09:04 -05:00
adelikat 35d3a7e716 Ram Search - fix typo in menu Option "Always Exclude From Ram Search" to "Always Exclude From Ram Watch" 2020-07-23 17:06:28 -05:00
adelikat d6be73f395 silly that visual studio rename doesn't save changes on open files, add a bunch of non-saved things, also consolidate two refresh images into 1 2020-07-23 16:55:51 -05:00
adelikat ed8912db92 rename and reorg stuff in Resources.cs 2020-07-23 16:51:29 -05:00
adelikat bda8a5ed4e implement SGX virtual pads 2020-07-23 16:35:09 -05:00
adelikat a1c6092de1 c64 virtualpad - fix a few keyboard buttons that were not mapped to a key 2020-07-23 16:32:57 -05:00
adelikat 34da24933a remove more unused images, start using c64 symbol on c64 virtualpad 2020-07-23 16:32:57 -05:00
nattthebear 1c606c1eb6 waterbox - expose read-only information about the guest memory page table 2020-07-23 16:08:24 -04:00
adelikat e778e5248d remove a bunch of unused images that we don't intend to use, make lua console menu item image consistent wtih the dialog image 2020-07-23 14:56:48 -05:00
adelikat 4d24b0bcf0 remove some unused usings 2020-07-23 14:25:39 -05:00
nattthebear 356abf6c43 Really, actually, truly fix the waterbox savestate snafu, probably
The description in the previous commit is accurate, but the problem runs deeper and was on the whole a complete failure for me to appreciate the difference between active and swapped in on memoryblocks.  Bleeecch.
2020-07-23 15:20:04 -04:00
nattthebear e343f6bd26 Fix a complete savestate snafu in waterbox
This was broken by 175556529e, with two related issues:  When we allowed for some operations to happen even when the block is inactive, we didn't account for the fact that in swapin, the block technically is not active yet (the lock is not on the self), and similarly in swapout, the lock has already been moved out of self.  The former caused all memory areas to revert to RWX at the host OS level after a swap, so no dirty detection was done.  After the former was fixed, the latter caused saved costacks to still get missed.

At the same time we ran into a perfect storm with costacks on Windows; if a stack page is not yet dirty, but we hit a fault for something else, Windows will not call our VEH handler unless the TIB stack extents are satisfactory, since it needs userspace to fix up the TIB extents via VEH or SEH handler, but there's already an exception pending.
2020-07-23 13:30:58 -04:00
adelikat ae6d512e11 durp 2020-07-22 16:31:52 -05:00
adelikat 5dd65c0ee8 add an osd message when a rewinder is created 2020-07-22 16:24:25 -05:00
nattthebear 07c7c329d3
Experiment to speed up libco and hence libsnes ()
The compiler now can fully inline the co_switch, and with most registers being specified as clobbers and not saved explicitly, the compiler can choose to save only what it needs to (we don't have to defensively save everything).

Practically speaking, the co_switch calls are usually inlined, but the functions they're in don't seem to be that big and don't make direct use of r12..r15 too much anyway, so (push r12..r15, switch, pop r12..r15) is a common emit.  But I see a miniscule FPS increase.
2020-07-22 16:13:19 -04:00
YoshiRulz 966a2abe3f
Call base.Dispose to banish warning 2020-07-22 06:34:32 +10:00
nattthebear 85be93c9d2 What was this?
Apparently we had random crashes in savestate on waterbox since some recent dev commit woops my bad
2020-07-21 15:43:28 -04:00