Commit Graph

124 Commits

Author SHA1 Message Date
James Groom 90b0574bc3
Remove unnecessary calls to ToList (e.g. in foreach)
squashed PR #1591
2019-10-13 15:50:57 +00:00
adelikat 3c0b793d97 lua console - fix a few other places where not having an association with .lua will throw an exception 2019-10-04 12:09:23 -05:00
adelikat 80150f70be Lua console - misc cleanups, remove some unused code 2019-10-04 12:06:23 -05:00
adelikat cf6c8c6dde Lua console - don't throw exception when opening a .lua file if the user has not associated a .lua file with an application. Fixes #1683 2019-10-04 11:52:46 -05:00
YoshiRulz 58c738957c
Rename PlatformLinkedLibSingleton and children 2019-05-18 15:40:46 +10:00
YoshiRulz d76e1a8a8b
Refactor PlatformLinkedLibSingleton and replace RunningOnUnix with CurrentOS 2019-05-18 15:30:29 +10:00
YoshiRulz e6374ef477
Use string interpolation 2019-03-19 00:06:37 +10:00
feos d54146791e fix #1509 2019-03-14 19:30:52 +03:00
James Groom 42764f0019 Add preliminary Unix compatibility (using Mono; resolves #1384) (#1380)
* Move PlatformSpecificLinkedLibs and implementations to common and rename
* Specify file ext. at LoadPlatformSpecific call site
* Move Client.Common.Global.RunningOnUnix to PlatformLinkedLibSingleton
* Inline var Resolver
* Use PlatformLinkedLibManager internally
* Move plugin load check to LinkedLibManager, use LinkedLibManager
* Interpolate
* Return exit code from dlclose/FreeLibrary
* Skip all calls to externs in BlipBufDll when using mono
* Use PlatformLinkedLibManager in SevenZipLibraryManager
* Add expected return value to workaround (from testing on Win32)
* Remove ".dll" from DllImport attr, remove temporary workaround, see desc.
The library can be built by changing the output file name in
`.../blip_buf/Makefile` to `libblip_buf.so`, and running `make`. It will be
loaded if placed in the `.../output` folder.
* Remove unused code, add TODO (this class is req. for Waterbox.PeWrapper)
The TODO is to [rewrite with
C#](https://docs.microsoft.com/en-us/dotnet/standard/io/memory-mapped-files)
instead of importing from `kernel32.dll`.
* Update OpenTK again but better (for #1384)
* Add Mono run script
* Add libblip_buf.so (temporary)
Temporary because it should be a separate package which BizHawk depends on.
* Add distro detection, add "already running" and "unknown distro" messages
* Gray-out Lua Console on Unix
* Extract superclass from EmuLuaLibrary, add shell implementation for Unix
* Specify libdl version, Fedora doesn't have the versionless symlink
* Remove empty `ToolStripMenuItem`, null `Text` caused crash on Unix
* Transform OpenTK keyboard input into a `List<KeyEvent>` and read that
Also fixes crash on rebind
* Remove debug `using ...;`
2019-01-04 01:50:55 +03:00
feos 5721894dbf lua console context menu: copy and select all
fix #1284
2018-09-08 12:41:26 +03:00
Scepheo 37ace00fea Extract Lua file enable logic for toggling and reuse when loading for the first time. Fixes #1138. 2018-05-06 23:05:50 +02:00
adelikat f81f745fcc Some luaconsole refactoring and moving more logic into LuaImp 2017-05-24 15:59:05 -05:00
adelikat 47f2371953 Misc cleanups 2017-05-24 09:06:31 -05:00
adelikat 4d1dd215e6 Lua Console - temp fix to fix recent regression of lua scripts disappearing on reboot core 2017-05-24 08:30:30 -05:00
adelikat 4919fc5182 don't reference GlobalWin.LuaConsole in LuaConsole! 2017-05-23 13:04:28 -05:00
adelikat facd845453 Lua Console - Move StartLuaDrawing() and EndLuaDrawing() to LuaImp since they exclusively LuaImp logic 2017-05-23 12:40:40 -05:00
adelikat 6196d81b5d Move _luaList from LuaConsole to LuaImp 2017-05-22 16:47:27 -05:00
adelikat 75affd8940 Lua console code cleanup 2017-05-18 14:53:03 -05:00
adelikat 4c48542b98 fix null reference exception when LuaSandbox attempts to use the Logger 2017-05-18 14:27:22 -05:00
nattthebear ebe789eed2 heh 2017-05-10 07:45:23 -04:00
J.D. Purcell b53502eed8 Spaces -> tabs. 2017-04-15 16:37:30 -04:00
adelikat f35717aae2 Remove yet more unused code 2017-02-22 10:11:08 -06:00
adelikat 7653b86f44 Remove some unused code 2017-02-22 10:09:44 -06:00
adelikat 0480ea3f44 when toggling a script on, update on screen lua drawing stuff. On gui.clearGraphics() immediate update the screen 2017-02-04 15:54:04 -06:00
adelikat 3b197b8fdf lua console - roll back commit that disposes scripts when closing the window, apparnetly luainterface doesn't want you to dispose of disposable things 2017-02-04 15:30:13 -06:00
adelikat 3d805a3541 null check for previous commit 2017-02-04 10:45:32 -06:00
adelikat 923565c350 Lua console - dispose of scripts when closing the console window 2017-02-04 10:32:36 -06:00
adelikat c050eaa8c7 lua console - fix the edit button to account for relative vs absolute pathing 2017-02-02 17:48:32 -06:00
adelikat 3bfce81eae LuaConsole - have a RequiredService of IEmulator and pass it into the lua implementation instead of using Global.Emulator 2016-12-06 10:35:11 -06:00
adelikat 889feeeeba fix #414 by idiot-proofing the lua console command window, if emu.frameadvance() is called, log a warning instead of blowing up 2016-11-13 11:26:09 -06:00
adelikat ddf23e4c3a Lua console - use string.IsNullOrWhiteSpace when checking the command line box 2016-11-13 11:15:30 -06:00
adelikat ec502acd1d Lua - make a call to DrawFinish() when closing the lua console. Fixes endless locked emu surface errors when opening it back up and loading a script that draws 2016-11-08 10:37:59 -06:00
adelikat 11b4f5a5b1 Lua - fix #691 - When calling client.reboot_core we still want to re-inject dependencies to the lua libraries 2016-08-28 12:07:26 -04:00
zeromus a7d2b8d7f7 * add a new IToolForm update mechanism which has extensible update points (so a tool can both pre- and post- update)
* make trace logging "core-pushes" model, to a sink installed by the frontend. This sink can go straight to the disk without wasting memory if that's what the Trace Logger tool has selected; or the Trace Logger will buffer it if it needs to.  Formerly, we had a "core-pushes-to-buffer" and "client-pulls-once-per-frame" which necessarily caused huge buffers no matter what was going on.
2016-08-13 15:31:26 -05:00
adelikat 47d9432ad4 Lua - set file watchers on lua session autoload 2016-02-14 21:51:12 -05:00
adelikat 36b82c3563 Lua Console - add a button that installs auto-complete for all bizhawk's lua library to Sublime Text 2's lua syntax, still todo - notepad++ 2016-02-07 08:27:57 -05:00
adelikat 907850ce02 Lua - fix exception when reloading a lua script with registered functions while the registered functions dialog is open 2016-02-06 14:22:56 -05:00
adelikat 487fce328b Lua - add option to detect changes in scripts and automatically reload them. Have this option off by default for now. Also fix reloading of scripts which was recently broken. 2016-02-06 13:50:02 -05:00
zeromus 5e89e563d0 overhaul lua sandboxing so that each lua script has its own sandbox. elaborate tracking of winform/event ownership to ensure that lua doesnt receive calls without going through the owner's sandbox. add win32-specific speed hacks for currdir set/get at higher speed. There may be bugs in this commit, but I think we're on the right track now. 2016-01-31 19:54:55 -06:00
adelikat 30c7b32bc1 Lua Console - when a lua exception occurs we also want to update the script status icons 2016-01-31 19:02:02 -05:00
adelikat 0ff2db5c8d Lua - ResumeScripts - loop through only running scripts, to avoid sandbox calls for non-running scripts 2016-01-31 14:31:29 -05:00
zeromus 42c0b62261 fix some lua currdir bugs, but its all broken, dont pay any attention to it 2016-01-31 03:18:34 -06:00
zeromus da865e28b8 try sandboxing currenty directory harder 2016-01-31 02:40:48 -06:00
adelikat 0013646db5 Rip out obsolete notion of a WatchList domain, change ram watch menu item to Default Domain, who's functionality is simply to decide the default domain used when adding a new watch, also add some Visual Studio designer shenanigans for a previous commit I made that broke it 2016-01-30 22:17:31 -05:00
adelikat 894a9c2318 Rework ToolHelpers from a static object to ToolFormBase that inherits form and have a lot of tools inherit it, in hopes of moving a lot of copy pasta into a base class, move a few functions that show up a lot there 2016-01-30 20:24:53 -05:00
adelikat 1e57a0a221 Lua Console - remember column widths 2016-01-30 19:20:52 -05:00
adelikat fdae465089 Lua - refresh the lua console when a script exits 2016-01-30 18:50:05 -05:00
feos 7409a32658 lua: attempt to use sandbox in callbacks. 2016-01-30 23:26:27 +03:00
zeromus 260ad45a88 fix lua's reboot_core function... maybe 2015-12-19 21:14:13 -06:00
feos eb41e8a8e0 lua: remove registered functions on toggle option. 2015-11-29 22:56:28 +03:00