Commit Graph

38 Commits

Author SHA1 Message Date
adelikat d4c8615e95 remove unused usings and other redundancies 2020-04-23 20:33:18 -05:00
zeromus 10bceeb0dc Nope, I think it's a good idea now.
Revert "This reverts commit c878c85daeaaf0cae3e28f24bc1a8b511293d7b6."
This reverts commit 1d1f2a18c6.
2020-04-23 21:20:59 -04:00
zeromus 1d1f2a18c6 This reverts commit c878c85dae. 2020-04-23 21:06:12 -04:00
zeromus c878c85dae for your consideration: sync settings return flags instead of a bool, so we can have more granularity in what needs resetting than just "reboot core". for instance, we would like to minimize the number of times the window layout is redone by not doing it when the screen settings havent changed. HOWEVER, while I was writing this commit message, I realized, I should probably do it just by being more cautious in kicking off the layout (unless the data coming from the core has changed, a layout shouldnt happen). So I am going to make this commit, in case it inspires anyone, and then revert it. 2020-04-23 21:05:56 -04:00
adelikat 7a77861896 Conisstently use MovieSession.StopMovie instead of stopping the movie directly, derefrence the movie on stopping instead of letting it hang around in memory 2020-04-18 14:50:25 -05:00
adelikat 9494243eef add an IStatable extension method that can load a state directly from a byte array, reduces the stream creation boiler plate in a number of palces 2020-04-18 10:26:08 -05:00
adelikat f2e52988c1 simplify some IMovieSession stuff 2020-04-14 21:23:47 -05:00
adelikat ab7225c955 remove MovieSession convenience property that isn't that convenient anyway 2020-04-14 20:58:02 -05:00
adelikat 0d2f014621 refactor Bk2LogEntryGenerator to be stateless, refactor some IMovieSession shenangians 2020-04-14 20:50:21 -05:00
adelikat 13e58cbac5 refactor IMovieController 2020-04-14 19:05:17 -05:00
adelikat 2b17c6d310 simplify some LogGenerator code 2020-04-14 16:44:37 -05:00
YoshiRulz e226ff102b
Replace dynamic type with Object in API
Using the dynamic type here is no better than object because the values are
primitive types -- more likely to be cast/typechecked than used as a receiver
param for a method call.
2020-04-13 17:05:38 +10:00
adelikat 2b281116ed misc cleanups 2020-04-08 16:03:35 -05:00
YoshiRulz 0ba7a5a7df
Rename axis-related types, members, and locals
I left a few methods where they had an equivalent *Bool*() for buttons, and also
left some in TAStudio that get serialised.
2020-03-31 17:29:55 +10:00
campbell000 373a05dcb4
Fixes joypad.set() method in Lua Console (#1898)
* Fixed lua joypad set method to accept button inputs with "P{controller}"
designations. Also allowed joypad set method to accept 0 or 1 as per
documentation

* Added comment
2020-03-24 12:40:18 -05:00
adelikat 6d5c444252 Move Global controller adapters into InputManager, it's a step in the right direction 2020-03-15 17:50:48 -05:00
adelikat edd8349dde fix typo in Global property 2020-03-15 17:09:11 -05:00
adelikat 079a0a4104 HeaderKeys - CONSTANTSDONTNEEDTOBEALLCAPS 2020-03-01 16:36:47 -06:00
YoshiRulz e5da8c765a
Move IController.ToDictionary extension to BizHawk.Emulation.Common 2020-02-28 13:26:27 +10:00
adelikat 4b50ea36e1 remove MemDomain CanPoke() extension method now that all it does is check the Writable flag which is better named and more conscise 2020-02-15 12:37:39 -06:00
adelikat 656f2b814e Move IEmulator extensions to the Emulation.Common namespace, the intent is that these are used and serve as built in functionality, so it's overly tedious to when most situations require both Common and an additional extensions namespace 2020-02-15 12:33:15 -06:00
YoshiRulz eab44d2d94
Add hack to EmuApi, add WIP external tool AutoGenConfig 2020-01-30 22:41:50 +10:00
adelikat e6e1962b54
Convert SMS settings to use GenericCoreConfig (#1816)
* refactor Sms settings including naming conventions and fix a typo, breaks configs with SMS settings already saved

* convert SMS controller type setting to an enum

* convert SMS Region setting to an enum

* Move SMS display type setting to an enum

* convert sms settings to properties

* SMS - wire up generic core config to a settings menu item

* remove some SMS menu items that are redundant to generic settings config

* remove more SMS menu items that are now redundant to generic core config

* remove more redundant SMS settinsg including SMSGraphicsConfig dialog, add descriptions and display names to SMS settings objects
2020-01-26 12:56:54 -06:00
YoshiRulz 0f1fa1531f
Use ranges in ApiHawk and Lua 2020-01-13 06:57:24 +10:00
adelikat 038f35f45e lua - implement controller number parameter to joypad.getimmediate and movie.getinput, consolidate input getting lua code 2020-01-03 09:51:48 -06:00
YoshiRulz a8408ed3be
Improve exception docs in BizHawk.Client.Common 2020-01-02 21:51:27 +10:00
YoshiRulz 264b27475e
Fix default referring to non-nullable type 2019-12-23 04:12:02 +10:00
adelikat b80b367831 refactor IMovie to expose the movie mode, and make extension methods that do IsPlaying type logic. This way there can be direct checks, and more variety of methods without cluttering the interface 2019-12-21 16:34:29 -06:00
YoshiRulz 0fcb6cbaa7
ApiHawk refactoring and cleanup
MemApi.ReadByteRange now returns the requested number of bytes and not 1 extra,
MemApi.ReadByteRange now warns only once per call for addrs outside range,
MemApi.ReadByteRange now warns for negative addrs (once per call; previous
implementation passed negative addresses to PeekByte), MemApi.WriteByteRange now
warns only once per call for addrs outside range, MemApi.WriteByteRange now
warns for negative addrs (once per call; previous implementation passed negative
addresses to PokeByte)
2019-12-17 02:39:04 +10:00
YoshiRulz 8f93a954e1
Move Lua hacks to Lua libs
Changed parameter of IInputMovie.SetRerecordCount to ulong to match internal
2019-12-16 15:04:35 +10:00
YoshiRulz 7d99071ac5 Migrate MemoryLuaLibrary to ApiHawk delegation
`memory.readbyterange` will now return partial data if the requested range
extends beyond the domain (invalid addresses are read as 0). Did not fix docs of
`memory.readbyterange` which incorrectly claim the returned table uses the
memory addresses as keys i.e. addr..(addr+length) - it was and remains
0..length. `memory.write_u8` will now check the specified domain's length and
not erroneously check the selected domain's length.
2019-11-30 23:32:09 +10:00
YoshiRulz 24c3f3a7f0 Merge MemApiBase into MemApi 2019-11-30 23:32:09 +10:00
YoshiRulz 1042f746f4 Migrate JoypadLuaLibrary to ApiHawk delegation
`joypad.getimmediate()` now returns float controls as well as bools
2019-11-30 23:32:09 +10:00
YoshiRulz 4a84e1a8a9
Migrate MovieLuaLibrary to ApiHawk delegation 2019-11-30 23:32:00 +10:00
YoshiRulz bd7dfbd487 Migrate MemorySavestateEmuLuaLibrary to ApiHawk delegation 2019-11-30 23:31:23 +10:00
YoshiRulz 8da543b1a5
Migrate EmulatorLuaLibrary to ApiHawk delegation
`emu.setrenderplanes(bool...)` now works when using BSNES or Genplus-gx
2019-11-30 23:31:18 +10:00
YoshiRulz 8ce403dab2
Mirror cleanup from 7aa170283 onto the C# APIs
also fixed VS' stupid comma placement and added a "using" in SqlLuaLibrary
2019-11-30 23:18:26 +10:00
YoshiRulz fab882b7a5 Move most API interfaces and implementations to BizHawk.Client.Common 2019-11-16 17:28:25 +11:00