56 Commits
Author SHA1 Message Date
SourMesen ad0a1b9849 Lua: Misc. fixes & improvements (#250)
-Fixed getAccessCounters documentation (swapped param order)
-Fixed file watcher not being disabled properly when closing the script window, causing the script to run if changed on the disk, even if the script window is closed
-Prevent file watcher from triggering from writes done by the script window itself (which caused the script to be reloaded 2 or 3 times in a row)
-Fixed UI freezes when using emu.log() on a large table
-Fixed crash when 100k character limit (in the last 500 lines) for script log was reached (out of bounds read/write)
-Added "fps" value to "getState"
-Slightly improved getAccessCounters/getCdlData performance
-Added a new drawPixels API to improve performance when a script needs to draw a lot of individual pixels
2026-08-10 22:42:34 +09:00
SourMesen 8fc682325c Debugger: Lua - Added getPressedKeys API (#236)
Also:
-Improved emu.log() to support tables/array and numeric values, instead of only strings.
-Fixed duplicate save state key name for GB
-Fixed TrimRight logic not working properly when the string had a single non-space character followed by spaces (e.g TrimRight("A ") returned "A ")
2026-07-28 19:54:00 +09:00
SourMesen e391fd8f9a Code: Add auto-formatting rules for C++ (clang-format) and enforce in CI via "clang-format" and "dotnet format" (#78)
* Code: Add auto-formatting rules for C++ projects (clang-format) and enforce code style via "clang-format" and "dotnet format"

* fix ui format warnings
2026-04-30 06:03:55 -07:00
SourMesen 8e4dd329ac Debugger: Lua - Added new APIs: getCpuState, setCpuState, getMasterClock, getCpuCycleCount (#58)
getCpuState/setCpuState allow the same functionality as getState/setState, but limited to only the CPU's state, making them much faster (some performance optimizations to the serialization & Lua code were also done)
getMasterClock/getCpuCycleCount are very fast alternatives to getState when all the script needs is a cycle count.
2026-04-26 18:00:08 -07:00
Sour a17a97fb7b Debugger: Lua - Support small arrays in getState/setState
This is needed to e.g have access to the GBA CPU's registers, etc.
Also hid some internal GBA state from getState to improve performance
2025-04-15 22:43:52 +09:00
Sour f1117c1b06 Debugger: Lua - emu.getPixel shouldn't set alpha channel to 255 2025-04-12 23:50:07 +09:00
Sour 355ca16074 Debugger: Lua - Added getCdlData API 2024-12-01 15:27:46 +09:00
Sour 13acb3fe42 Added GBA support 2024-03-30 11:42:31 +09:00
Sour 7a2e410883 Debugger: PCE - Fixed crashes with Lua tutorial script due to the way overscan/resolution is handled for the PCE 2024-01-05 14:28:44 +09:00
Sour 1678a5ffab Debugger: Lua - Fixed incorrect names of memType values for cpu memory (nes -> nesMemory, etc.) 2023-10-06 21:02:16 +09:00
Sour 77acdab584 NES: Fixed phase for NTSC filters, allowing 3-phase pattern for Battletoads 2023-03-26 19:53:07 -04:00
Sour 3de8e0d305 Debugger: SNES - Process DSP read/writes + added option to ignore DSP reads/writes 2023-01-25 15:47:29 -05:00
Sour e6b4d23f70 Rename TODOs that need to be fixed/checked before release to TODOv2 2023-01-05 14:07:08 +09:00
Sour 9a05559eb9 Debugger: Added --testRunner support 2022-12-28 10:44:54 +09:00
Sour c3dd78b5ab Debugger: Implemented step back for all main CPUs 2022-09-11 14:50:40 -04:00
Sour 7108bdde36 Refactoring - Moved some leftover files out of the root folder 2022-09-08 21:48:49 -04:00
Sour 152abf690b Rename stdafx.h to pch.h 2022-09-08 21:29:52 -04:00
Sour 0de17a6df1 Debugger: MemoryType::Register refactoring 2022-08-29 20:29:12 -04:00
Sour ac16a14297 Fixed crash on power off when input controllers were displayed in the HUD + refactor GetControlManager to improve thread safety 2022-08-25 22:22:16 -04:00
Sour cd3dce9ff2 UI: Upgrade to latest Avalonia builds (Avalonia, AvaloniaEdit, Dock) 2022-08-12 20:24:25 -04:00
Sour 372e91de85 Debugger: Fixed setInput documentation, imported more premade scripts from Mesen 2022-08-09 22:10:30 -04:00
Sour c9a9ecad3f Debugger: Lua - Fixed example/tutorial script 2022-08-09 21:58:04 -04:00
Sour 629f872270 Debugger: Lua - Enum documentation, code completion improvements 2022-08-09 21:45:04 -04:00
Sour 1a152ecb9f Debugger: Lua - Code completion (WIP) 2022-08-08 23:40:41 -04:00
Sour b805547bec Debugger: Lua - addCheat/clearCheats 2022-08-04 19:56:10 -04:00
Sour 4fc5b2051e Debugger: Lua - Implemented step, reset 2022-08-04 19:10:30 -04:00
Sour 46bb3d4733 Debugger: Lua - createSavestate/loadSavestate 2022-08-04 18:31:39 -04:00
Sour 9b8ea91194 Debugger: Lua - Implement getPixel 2022-08-03 23:13:29 -04:00
Sour 570bea7d9d Debugger: Lua - Added getMemorySize api 2022-08-03 20:53:04 -04:00
Sour 1bf1d8f84f Debugger: Lua - Allow getAccessCounters to return counters or last access stamps 2022-08-03 20:37:08 -04:00
Sour 991052f8bc Debugger: Lua - getDrawSurfaceSize api, added relative pos to getMouseState 2022-08-03 19:35:18 -04:00
Sour 809fee807b Debugger: Lua - Make getScriptDataFolder return an empty string when IO access is turned off 2022-08-03 00:05:58 -04:00
Sour 240e045f99 Debugger: Lua - Added selectDrawSurface API (+ Linux compilation fixes) 2022-08-02 23:25:41 -04:00
Sour 2eda2cc27e Debugger: Lua - Allow callback to change read/written value, allow callbacks on any memory type (not just cpu memory), allow callbacks for ppu memory 2022-08-02 01:42:14 -04:00
Sour 0e36b496b0 Debugger: Lua - Added measureString, added support for text wrapping in drawString 2022-08-01 20:48:06 -04:00
Sour 6473c84829 Debugger: Lua - Access counters, consoleType/region in getState, getLabelAddress/convertAddress changes 2022-08-01 19:42:50 -04:00
Sour 2b5cac0055 Debugger: Lua - getPrgRomOffset -> convertAddress 2022-07-31 23:26:26 -04:00
Sour f61f050410 Debugger: Lua - Refactoring/minor performance improvements 2022-07-31 22:57:41 -04:00
Sour 8d7f12efb9 Debugger: Lua - Performance fixes, naming fixes/changes 2022-07-31 19:41:57 -04:00
Sour 6163158637 Debugger: Lua - Implemented getState + setState 2022-07-31 15:00:53 -04:00
Sour d4feda5ed5 Debugger: Lua - Added getScreenSize api 2022-07-30 20:46:16 -04:00
Sour 63622f0f93 Debugger: Lua - Fixed issues with get/setScreenBuffer 2022-07-30 19:56:43 -04:00
Sour 13ef393c9d Debugger: Minor performance tweaks for getScreenBuffer/setScreenBuffer 2022-07-30 16:47:06 -04:00
Sour c6e527cded Debugger: Lua - getScreenBuffer/setScreenBuffer, getInput/setInput implementations + other fixes/refactoring 2022-07-30 15:39:07 -04:00
Sour 55b96c9ebc Debugger: Assembler rewrite/refactoring for NES/SNES/PCE 2022-05-23 16:46:59 -04:00
Sour 9d226d6588 Linux: Fixed build, fixed some clang warnings 2022-05-09 20:53:56 -04:00
Sour 8c75f0fc32 Fixed behavior for reset/power cycle shortcuts + fixed deadlock when debugger is active 2022-02-27 22:20:04 -05:00
Sour 581f8ab709 Debugger: Remove memory access count tracking (only keep stamps for memory tools color) 2022-02-16 20:50:00 -05:00
Sour 3615ef0eb1 Core: Enabled warning level 4, fixed/disabled warnings 2022-01-23 12:36:35 -05:00
Sour dffbd4921a Refactoring: Renamed SnesMemoryType 2022-01-22 12:16:10 -05:00