Commit Graph

2140 Commits

Author SHA1 Message Date
adelikat 433eff65ec OSDManager - simplify calculations for points for things like fps, frame counter, etc 2019-12-21 15:24:50 -06:00
adelikat 6748d32830 Message config - fixes, make Anchor an enum instead of int 2019-12-21 14:50:20 -06:00
adelikat a565f6f299 refactor message display option settings to be an object, and simplify the message config dialog 2019-12-21 14:11:49 -06:00
adelikat b94a830f13 Message config refactor - fix some names, break off DefaultMessageOptions class into its own file 2019-12-21 13:22:22 -06:00
adelikat 98bfcabfe8 refactor Global.SystemInfo into an extension method class 2019-12-21 13:07:05 -06:00
adelikat 5002968bd7 cleanup SystemInfo 2019-12-21 13:00:33 -06:00
adelikat 8ac53f51c0 move bkm files to the import folder now that they are only used for import 2019-12-21 12:55:57 -06:00
YoshiRulz 784c800ca2
Disable features using Win32 unless on Windows host
forms: GBAGPUView, GBGPUView, LogWindow, SNESGraphicsDebugger,
SynclessRecordingTools; features: A/V recording, logging to AWE(?)
2019-12-21 18:31:03 +10:00
YoshiRulz 7ea8fb185a
Congregate, organise, and cleanup some Win32 imports and their usages 2019-12-21 18:21:51 +10:00
adelikat f934b059c8 fix a few potential NRE's in Global.cs 2019-12-20 10:24:54 -06:00
adelikat 24ed667c13 reduce global usage in MainForm more 2019-12-20 10:22:42 -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 08d0f462fc
Partially migrate NesLuaLibrary to ApiHawk delegation
nes.setdispbackground and nes.setscanlines now throw when the core is neither
NesHawk or QuickNES (the latter is still silently ignored by these functions)
2019-12-16 17:47:50 +10:00
YoshiRulz 29ac251f34
Migrate SnesLuaLibrary to ApiHawk delegation 2019-12-16 17:14:10 +10:00
YoshiRulz 60daae50d5
Migrate GenesisLuaLibrary to ApiHawk delegation 2019-12-16 17:14:01 +10:00
YoshiRulz 0b43b35427
Migrate GuiLuaLibrary to ApiHawk delegation
Changed param clear of IGui.DrawNew from bool? to bool (default value remains
true), made IGui and GuiLuaLibrary inherit IDisposable, added
GetDefaultTextBackground to IGui, applied fix from 6b3071d8a to
GuiApi.DrawString, replaced background box drawn by Lua API
gui.drawString/gui.drawText with what I think is a shadow (now matches
GuiApi.DrawString)
2019-12-16 16:54:06 +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
adelikat ad8f321ea1 Add event.availableScopes(), fix LogWithSeparator, cleanup 2019-12-15 12:25:49 -06:00
YoshiRulz 05801dc2c5
Reduce LINQ usage in Lua subsystem 2019-12-16 04:08:22 +10:00
adelikat 91ef301a23 memory callbacks - log error if a scope is passed in that is not available 2019-12-15 12:02:43 -06:00
adelikat 9676fd97df cleanup 2019-12-15 11:52:55 -06:00
adelikat 1d741f3d0e memorycallbacks - rename domain param to scope to avoid confusion, otherwise it looks like any memory domain will do 2019-12-15 11:42:26 -06:00
adelikat 29e284c6f8 cleanup 2019-12-15 11:40:22 -06:00
adelikat 250bd2087e fix lua memory callback functions on cores with no system bus such as PSX 2019-12-15 11:37:45 -06:00
YoshiRulz 2f494003c7
Add param to IList.ToLuaTable extension and refactor bizstring.split
Changed behaviour when said Lua function is called with a misformatted separator
param, and updated its docs
2019-12-16 01:58:19 +10:00
adelikat d2f21f84e3 another extension method for lua table creation 2019-12-15 09:46:39 -06:00
adelikat 7ebfd42229 Simplify some lua table creation with an extension method 2019-12-15 09:22:10 -06:00
adelikat d955c468db refactor LuaHelper into an extension method class, and some nitpick cleanups 2019-12-15 09:05:33 -06:00
YoshiRulz 8bb9cee9c2
Write version to config (for migration check to be implemented later) 2019-12-16 00:44:40 +10:00
YoshiRulz e58f2811dc
Replace config bool `UseNLua` w/ enum 2019-12-16 00:38:22 +10:00
YoshiRulz f8dc18c1bd
Migrate SavestateLuaLibrary to ApiHawk delegation
includes backwards-compatible API change
2019-12-15 04:39:16 +10:00
YoshiRulz 104c17e77c
Prepare for EmuHawk-tied libraries to delegate to ApiHawk
Made ApiContainer inherit from APISubsetContainer, added
DelegatingLuaLibraryEmu, and reworked init logic in EmuLuaLibrary
2019-12-15 03:52:48 +10:00
James Groom 3099a11a04
Merge branch 'master' into lua-via-apihawk 2019-12-14 16:17:14 +00:00
feos dfa73eceef mame syncsettings 2019-12-14 18:50:11 +03:00
YoshiRulz 3f9b51f565
Partially revert #1754, add event.onmemoryexecuteany 2019-12-14 16:47:29 +10:00
adelikat 06e1149cfe a bit of cleanup 2019-12-13 12:35:51 -06:00
adelikat b080d6d09e
Merge pull request #1754 from warmCabin/all-memory-execute
All Memory Execute
2019-12-13 07:40:41 -06:00
YoshiRulz 185337d1c5 Replace assembly references with NuGet packages where possible 2019-12-12 03:56:46 +00:00
warmCabin 201a4b85a4
remove default value for address
<adelikat> The reason we throw an error originally is my concern is that it would be easy to leave out an address in a script, and that it would have huge concequences.

<adelikat> I think address should not have a default value here and make the user explicitly add nil if they want this functionality.
2019-12-11 12:44:54 -05:00
warmCabin 715761f563
unit? 2019-12-10 23:23:40 -05:00
warmCabin e7374447f3
make onmemoryexecute address default to null 2019-12-10 22:59:35 -05:00
adelikat 515f409246 Tastudio - Make mainform hotkeys out of a bunch of built in hotkeys 2019-12-10 19:26:23 -06:00
adelikat 7cd4bf881c TasBranch - remove last reminents of UniqueIdentifier.GetHashCode() 2019-12-08 14:26:29 -06:00
adelikat 35fdb5dbdd Tastudio - Integrate branches with the statusbar slot icons 2019-12-08 13:53:36 -06:00
adelikat fff85d917a Fix typo 2019-12-08 13:41:52 -06:00
adelikat 43c9ac7ef7 SImplify some code 2019-12-08 13:40:59 -06:00
adelikat 6107bc4553 TasMovie - rip out input caching attempt that wasn't even working 2019-12-07 12:21:42 -06:00
adelikat 9bb07dca76 Bk2ControllerAdapter/Bk2Movie - don't new up everytime some things that don't change through the lifetime of the object. HUGE (3x-4x) speedup to TAStudio 2019-12-07 11:35:48 -06:00
adelikat 4a522263d9 Bk2ControllerAdapter - small cleanups 2019-12-07 11:02:17 -06:00
adelikat 4e7d19fa18
Merge pull request #1744 from Zinfidel/watch-separator-sorting
Watch sorting - new algorithm that handles separators. Fixes #1713
2019-12-06 18:44:32 -06:00
feos b5db6a7df6 mame
- put system and game names to emuhawk caption
- fix loading from recent menu
- temp fix for audio drift
2019-12-06 21:34:20 +03:00
adelikat 4711950f9c default to using luainterface over nlua, supposedly the memory leaks are resolved in luainterface 2019-12-04 16:56:27 -06:00
adelikat 1dbf932486 Config.cs - remove unused methods, simplify some things 2019-12-04 16:53:57 -06:00
James Groom fcc0bc19a4
Change build config to support the Core build system (for #1415)
squashed PR #1702
2019-12-03 16:58:33 +00:00
adelikat 5e73c7c536 lua - update memory documentation to mention it defaults to system bus, fixes #1675 2019-12-02 20:48:38 -06:00
adelikat c050a377d8 WatchList - flag changes when doing column sort 2019-12-02 20:11:35 -06:00
Zach 0e055ecb5a Merge branch 'master' into watch-separator-sorting 2019-12-02 16:38:01 -08:00
Zach e621876453 Replaced LINQ query with for loop.
Upon reflection, the query looked nice, but was inferior to a plain for loop because it would have to create n anonymous objects to process the list, even with LINQ's filtering optimization, due to select preceding where.
2019-12-02 16:37:55 -08:00
adelikat 52db5ac848 cleanups 2019-12-01 18:05:20 -06:00
YoshiRulz 230548cf35 Partially migrate MainMemoryLuaLibrary to ApiHawk delegation
`mainmemory.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
`mainmemory.readbyterange` which incorrectly claim the returned table uses the
memory addresses as keys i.e. addr..(addr+length) - it was and remains
0..length. `mainmemory.write_u8` will now check the specified domain's length
and not erroneously check the selected domain's length.
2019-11-30 23:33:54 +10:00
YoshiRulz b678e19041
Merge LuaMemoryBase into MainMemoryLuaLibrary 2019-11-30 23:33:46 +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 b2676bce68 Copy LuaMemoryBase and merge copy into MemoryLuaLibrary 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 f4a229888f Migrate UserDataLibrary to ApiHawk delegation 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 e39e083c13
Migrate GameInfoLuaLibrary to ApiHawk delegation 2019-11-30 23:29:09 +10:00
YoshiRulz 0bea6032ab
Migrate SQLLuaLibrary to ApiHawk delegation 2019-11-30 23:27:14 +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
adelikat 7aa170283e cleanup some lua files 2019-11-29 16:35:21 -06:00
adelikat 50cad2067f Lua - when removing registered functions, remove functions reigstered to a script of the same path (or the same thread) 2019-11-29 15:11:40 -06:00
adelikat f36d69e6b0 cleanup LuaFileList 2019-11-29 15:10:58 -06:00
adelikat d757b8e64f Refactor a lot of lua code to use a LuaFile object instead of a Lua object, and unify some luafile manipulation logic into methods 2019-11-29 15:02:40 -06:00
adelikat 84d9419637 LuaLibraryBase - a bit of cleanup 2019-11-29 12:40:14 -06:00
adelikat c9d34ca828 minor cleanup 2019-11-29 10:16:48 -06:00
adelikat ce2a7b1612 EmuLuaLibrary.Events - cleanup 2019-11-29 10:14:07 -06:00
adelikat a0ba2189af lua events library - remove N64 dynarec checks since we don't have the dynarec core anymore 2019-11-29 10:03:35 -06:00
adelikat 263a72f57d Lua console - remove bad user option (defaulted to true even) that clears all registered functions on toggle, toggle already clears all registered functions registered to the script. If there is some edge case there, we need to fix it, not clear registered funcitons that don't even belong to the given script 2019-11-29 09:58:07 -06:00
Zinfidel ac2c42ef74 Correct tab size inconsistency 2019-11-27 21:46:49 -08:00
Zinfidel b3875e21ae Watch sorting - new algorithm that handles separators.
Also moved comparers from fields into a dictionary to make selection more concise.
2019-11-27 21:31:39 -08:00
adelikat 6eb9fa9b51 movie importers - import the core header key on systems that we check for core when loading the movie 2019-11-26 20:10:34 -06:00
adelikat f0f8cd3171 cleanup Bk2Movie.HeaderApi.cs 2019-11-26 20:04:12 -06:00
adelikat 3c14371009 pjm import - fix analog stick importing 2019-11-26 09:11:20 -06:00
adelikat 3e92b8c5ab pjm import - account junk white space at the ened of the file 2019-11-26 08:53:09 -06:00
adelikat c741c37789 fix .pjm import, text based input parsing was completely broken. Fixes #1723 2019-11-25 15:02:26 -06:00
adelikat 64f32983f6 misc movie code cleanups 2019-11-25 08:37:11 -06:00
adelikat ffd2aedfa5 oops, fix paste logic to be the first different frame, not the last 2019-11-24 19:23:12 -06:00
adelikat 6eef264f91 paste - only invalidate on the first different frame pasted, rather than the first selected frame 2019-11-24 19:14:49 -06:00
adelikat 1f4a2274d3 TasMovie - more cleanup 2019-11-24 16:06:01 -06:00
adelikat 60487c6a96 don't use Guid.GetHashCode, this was a leftover from some old bad code 2019-11-24 15:53:33 -06:00
adelikat caced9c2a8 TasMovie - remove unused constructor params 2019-11-24 15:40:26 -06:00
adelikat 6a584c00bd TasMovie - delete unused progress worker 2019-11-24 15:35:45 -06:00
adelikat 7d0b736e8d Simplify TasMovie by using auto-properties 2019-11-24 15:33:25 -06:00
adelikat 1c67066e13 TasMovie - a small simplification 2019-11-24 15:26:44 -06:00
adelikat 289971c9e9 .tasproj - convert Session saving/loading to json. This is a breaking change, and older versions will silently fallback to defaults 2019-11-23 21:55:29 -06:00
adelikat b4c4c3b870 .tasproj - use json to save/load statemanager settings. This is a breaking format change, earlier .tasproj will load and silently fallback to default settings 2019-11-23 21:43:23 -06:00
adelikat 707419bba1 some TasMovie cleanups 2019-11-23 21:33:48 -06:00
feos d15dc56e15 address #1631 for gambatte 2019-11-20 21:25:55 +03:00
alyosha-tas 2fbf3c3b19 O2Hawk: system management work 2019-11-18 22:17:29 -05:00
alyosha-tas 61038a13ae O2Hawk: Expose Core and start running code 2019-11-18 17:33:55 -05:00
adelikat eb1d87933b Fix Nintento (breaking config change but we've already thoroughly broken compatibility since last release), partially addresses #971 2019-11-16 12:42:18 -06:00
YoshiRulz a7ffdd948e
Add DelegatingLuaLibrary and set up ApiHawk instantiation 2019-11-16 17:19:04 +10:00
YoshiRulz 27b2d1b6ad
Mirror cleanup from cf4dd6770 onto the Lua APIs 2019-11-16 16:52:32 +10:00
YoshiRulz fab882b7a5 Move most API interfaces and implementations to BizHawk.Client.Common 2019-11-16 17:28:25 +11:00
adelikat 5a1341dd47 misc cleanups 2019-11-15 17:00:43 -06:00
adelikat e974006ea6 RamSearchEngine - simplify some 2019-11-15 16:47:54 -06:00
adelikat ab9c7699ec misc cleanups 2019-11-15 15:15:13 -06:00
adelikat c4658c3e85 remove Bkm as a IMovie implementation and remove all code other than what is necessary to import it 2019-11-14 21:41:37 -06:00
adelikat adf834480a remove .bkm as a standard movie type, require user to run the importer 2019-11-14 21:39:15 -06:00
adelikat 8dfbd752ae SmvImport - remove useless If 2019-11-14 21:03:50 -06:00
adelikat 2a3c9b741e Cleanups 2019-11-14 18:18:46 -06:00
adelikat 40e5106064 oops 2019-11-14 18:01:52 -06:00
adelikat 5aed5ed9c7 rename importer attribute 2019-11-14 18:01:16 -06:00
adelikat 673073e650 data drive the import movies dialog filter 2019-11-14 18:00:33 -06:00
adelikat 0235ca21ab make movie importers internal 2019-11-14 17:19:59 -06:00
adelikat af50d74b98 simplify movie import code more 2019-11-14 17:00:47 -06:00
adelikat f93766e5bb Movie import cleanup 2019-11-14 16:35:29 -06:00
adelikat 0043c1de1e Movie Import cleanup - use IMovie more, don't redundantly save in Pjm and Psx importers, cleanups 2019-11-14 15:59:01 -06:00
adelikat eb1b658f6e movie import - cleanup 2019-11-13 20:52:20 -06:00
adelikat fb8111d630 convert .mmv import to new style, properly import game gear flag 2019-11-13 20:52:19 -06:00
YoshiRulz 5eb54dbf9e
Fix #1727 2019-11-14 11:37:13 +10:00
adelikat 641c3e9f82 convert .smv importer to new style, also convert to bsnes instead of snes9x 2019-11-12 14:59:07 -06:00
adelikat 33d53638e9 convert Vbm importer to new style 2019-11-10 14:35:58 -06:00
adelikat dce39c1cff convert GMV importer to new style 2019-11-10 13:20:13 -06:00
adelikat b1bdb8c7ea port fmv importer to new style 2019-11-10 12:48:51 -06:00
adelikat f9eadf104b delete unused movie import code 2019-11-10 12:18:28 -06:00
adelikat c5ecba326f convert YMV importing to new way, and also fix it, it's been broken for a long time, if it ever worked 2019-11-10 12:14:50 -06:00
adelikat c1516de259 Convert mc2 to new import style, properly support pcecd flag, and number of controller ports 2019-11-10 11:35:45 -06:00
adelikat ced5b313a5 Leagcy movie import - remove more fm2 and lsmv specific code 2019-11-10 11:10:45 -06:00
adelikat 6086f98fa0 convert lsmv importer to new style 2019-11-10 10:55:53 -06:00
adelikat 223795887e remove importer support for .mcm, .nmv, .vmv, .zmv. These are very dated and with very few movies out in the wild 2019-11-10 10:02:26 -06:00
adelikat 6d535a11ee Convert fcm importer to new style, input parsing seems to have been broken this whole time, this commit doesn't fix that, just converts it 2019-11-10 09:55:27 -06:00
adelikat d0f54f88ee delete some fm2 specific legacy importer code 2019-11-10 09:05:17 -06:00
adelikat 8baa400d34 fix up new fm2 import and use it instead of the old one. FDS is still not supported, nor peripherals, but they weren't supported in the old one either 2019-11-10 09:00:27 -06:00
adelikat 0a63255244 progress on fm2 importer rewrite (not wired up yet) 2019-11-10 09:00:27 -06:00
adelikat 7c9f2a2873 cleanup Import classes 2019-11-10 09:00:27 -06:00
adelikat 46ea09da10 MovieImport - cleanup, and properly wire up the new style importers. Pjm, Pxm no longer broken 2019-11-09 14:43:49 -06:00
adelikat 7c38b855ca nitpick rename of a few files 2019-11-09 13:45:23 -06:00
adelikat 93562eb935 cleanup FileLoader.cs 2019-11-09 13:40:15 -06:00
YoshiRulz 8c059aa43c
Replace helper methods with readonly bool IsUnixHost and cleanup 2019-11-04 14:30:05 +10:00
J.D. Purcell fec63fb66a Spaces -> tabs, fix mixed newlines. 2019-11-03 20:58:36 -05:00
adelikat e4e10646bf Merge branch 'master' into MoreUnixMonoCompatWork
# Conflicts:
#	BizHawk.Client.EmuHawk/Program.cs
#	BizHawk.Common/BizInvoke/MemoryBlock.cs
2019-11-03 16:09:22 -06:00
adelikat 942d9fc75e Simplify OS checks with some helpful methods 2019-11-03 16:04:42 -06:00
adelikat b9ade1a555 Merge branch 'master' into MoreUnixMonoCompatWork 2019-11-03 12:55:53 -06:00
J.D. Purcell d71b2d26b5 Update Newtonsoft.Json 2019-11-02 16:24:08 -04:00
adelikat ae7221988b cheats code cleanup 2019-11-02 11:25:11 -05:00
J.D. Purcell f2d43f306c Remove unused setting. 2019-11-01 22:44:02 -04:00