Ryan Fleury
|
9504946376
|
entity view filtering
|
2024-02-05 12:08:50 -08:00 |
|
Ryan Fleury
|
e03e1dd136
|
eval lexer: same as last
|
2024-02-05 11:28:29 -08:00 |
|
Ryan Fleury
|
0b6b0947ed
|
eval lexer: allow a few more corner cases of various compiler/linker-inserted identifiers, so that eval works in all cases
|
2024-02-05 11:26:37 -08:00 |
|
Ryan Fleury
|
38b8bfd6fb
|
fix ordering of event consumption w/ filter box
|
2024-02-05 11:24:31 -08:00 |
|
Ryan Fleury
|
87e0e9a7e9
|
bugfix truncated string hover rule
|
2024-02-05 11:19:34 -08:00 |
|
Ryan Fleury
|
6e874c7449
|
syschar -> defwindowproc
|
2024-02-05 11:07:36 -08:00 |
|
Ryan Fleury
|
d2d3d14c41
|
demon/win32: roll back on all hit traps, even if explicit. the previous implementation would silently skip threads past explicit traps that they hit, as a way of implicitly storing the fact that trap exceptions had been reported, and the user could continue past them. this resulted in incorrect instruction pointer display in those circumstances. this change adjusts this, so that after a trap exception of any kind, the instruction pointer is ALWAYS rolled back. to ensure that the trap is not repeatedly hit, if the associated exception has already been reported, to allow the user to e.g. step over traps (this is the behavior of Visual Studio), additional state is stored per-thread-entity, which allows a subsequent demon_os_run to adjust RIPs past their previously reported traps before running again.
|
2024-02-05 10:47:57 -08:00 |
|
Ryan Fleury
|
2359c82fba
|
extend ctrl process memory cache with waiting mechanism; employ to wait for changes to propagate through process memory cache, when forcibly mutating debuggee process memory
|
2024-02-05 10:04:00 -08:00 |
|
Ryan Fleury
|
f2c74cbcb2
|
float mousemove detection & ui mouse position rules down to ui core layer
|
2024-02-05 09:29:50 -08:00 |
|
Ryan Fleury
|
f03f3e4421
|
robustify ctrl memory streaming cache & texture cache layer to unreasonably large sizes/dimensions
|
2024-02-05 09:24:00 -08:00 |
|
Ryan Fleury
|
95eea70682
|
fix failure condition in entry point detection
|
2024-02-05 08:54:45 -08:00 |
|
Ryan Fleury
|
762013899f
|
switch entry point detection/trap strategy to finding *all* possible candidates, and trapping all of them, rather than forcing the ctrl thread to decide on one specific entry point voff
|
2024-02-05 08:41:18 -08:00 |
|
Ryan Fleury
|
0be4680ec9
|
os_gfx -> report mouse move events; still allow passive mouse interaction if window is unfocused, but have recently received mousemove events
|
2024-02-03 18:04:21 -08:00 |
|
Ryan Fleury
|
985a6f37e9
|
notes
|
2024-02-03 17:37:39 -08:00 |
|
Ryan Fleury
|
f9e2aa99a9
|
fix padding calculation - prohibit all overlapping members
|
2024-02-03 09:56:24 -08:00 |
|
Ryan Fleury
|
509089d95d
|
remain robust to busted range queries for ctrl process memory cache
|
2024-02-03 09:20:31 -08:00 |
|
Ryan Fleury
|
647558b140
|
fix plural language in singular scenarios
|
2024-02-02 17:28:22 -08:00 |
|
Ryan Fleury
|
cbe842c5ec
|
dont do padding members for unions, oops
|
2024-02-02 17:15:55 -08:00 |
|
Ryan Fleury
|
f796f64c2f
|
process memory read failuer visualization in eval watch view tables
|
2024-02-02 17:05:55 -08:00 |
|
Ryan Fleury
|
36d749ddb5
|
slightly stronger padding visualization
|
2024-02-02 16:46:54 -08:00 |
|
Ryan Fleury
|
7e589e8cd2
|
padding visualization
|
2024-02-02 16:42:08 -08:00 |
|
Ryan Fleury
|
708517a668
|
move fuzzy range match visualization into formal ui rendering path; write dedicated truncated fuzzy match rendering path; fixes some visual bugs & makes all fuzzy range match visualization consistent and not ad-hoc
|
2024-02-02 15:35:44 -08:00 |
|
Ryan Fleury
|
876d9338fc
|
auto-close universal ctx menus when entities/tabs invalidate; some visual fixes
|
2024-02-02 14:13:00 -08:00 |
|
Ryan Fleury
|
6897c0bb57
|
only show mid-row cache line boundaries when unexpanded, since the expansion will show more precise info
|
2024-02-02 12:53:34 -08:00 |
|
Ryan Fleury
|
15e239a0dc
|
cache line boundary visualization
|
2024-02-02 12:47:51 -08:00 |
|
Ryan Fleury
|
5d3aa301f0
|
enum type evaluation visualization - can now use watch windows to inspect all possible enum values
|
2024-02-02 11:50:21 -08:00 |
|
Ryan Fleury
|
847749337b
|
eval parser: more coverage for c++-compiler-generated & various C++-style identifier names
|
2024-02-02 11:33:06 -08:00 |
|
Ryan Fleury
|
542753ddcc
|
deduplicate editability/expandability determination path for viz row build
|
2024-02-02 11:12:20 -08:00 |
|
Ryan Fleury
|
9d8efa3a44
|
deduplicate common parts of viz row building
|
2024-02-02 11:03:14 -08:00 |
|
Ryan Fleury
|
410a340a09
|
oops -> carry over dbgi target with viz block splits
|
2024-02-02 10:13:39 -08:00 |
|
Ryan Fleury
|
8958b414e2
|
properly parameterize viz block & viz row building paths based on dbgi table target
|
2024-02-02 10:09:30 -08:00 |
|
Ryan Fleury
|
ac895a85eb
|
eliminate old eval watch view code
|
2024-02-02 09:30:22 -08:00 |
|
Ryan Fleury
|
ad57a0d3e8
|
stop following expansion nodes at the first non-expanded one, when converting watch view selection coords when ancestor has been collapsed
|
2024-02-02 09:28:15 -08:00 |
|
Ryan Fleury
|
20ff4acecc
|
simplify/collapse/deduplicate eval viz block building code; correctly build filtered-info-table-sorted expansions for filtered debug info table watches; eliminate special-case empty row in watch views, just feed everything through the viz blocks path
|
2024-02-01 17:05:08 -08:00 |
|
Ryan Fleury
|
be4c52b7ef
|
first part of collapsing globals/types/threadlocals path into being single viz block building path; more filtering ui work
|
2024-02-01 13:54:34 -08:00 |
|
Ryan Fleury
|
6740520bbe
|
straighten out table coordinates <-> viz block coordinate space mappings, since search-backed tables no longer can assume those two things are the same; clang -> o2; fix clang build
|
2024-02-01 13:21:07 -08:00 |
|
Ryan Fleury
|
28fdd791ae
|
extend eval viz blocks & windowed row build path with optional member info - use to extend watch type info visualization with size/offset information
|
2024-02-01 10:59:55 -08:00 |
|
Ryan Fleury
|
45b59e4cc4
|
apply fuzzy filtering correctly to globals/thread-locals/types views
|
2024-01-31 15:06:20 -08:00 |
|
Ryan Fleury
|
02979ba26c
|
first pass at equipping frontend line edit with fuzzy match range visualization; shift new debug-info-range viz block -> viz row path to using a backing filtered item array to map the abstract index space into the debug info table spaces
|
2024-01-31 14:54:49 -08:00 |
|
Ryan Fleury
|
f3f0e2a697
|
plug in basic, half-finished filtering functionality to watch/locals/registers/types/globals/threadlocals views
|
2024-01-31 14:35:14 -08:00 |
|
Ryan Fleury
|
630272ec37
|
expand dbgi asynchronous fuzzy matching system to allow selection of target table; this allows asynchronous fuzzy matching over types, globals, thread locals, and procedures
|
2024-01-31 14:22:12 -08:00 |
|
Ryan Fleury
|
41b853b874
|
simplify fuzzy matching path to a single query
|
2024-01-31 14:07:16 -08:00 |
|
Ryan Fleury
|
071ff82673
|
introduce general-purpose filtering path for tabs; control whether or not it is enabled via view spec flags. + feature flags for automatically bring up filtering box when typing
|
2024-01-31 14:01:53 -08:00 |
|
Ryan Fleury
|
9106190893
|
first pass at types view
|
2024-01-31 12:31:09 -08:00 |
|
Ryan Fleury
|
8602e5b23e
|
first pass at thread-locals view
|
2024-01-31 12:24:57 -08:00 |
|
Ryan Fleury
|
c8010b7542
|
first pass at globals view
|
2024-01-31 12:17:43 -08:00 |
|
Ryan Fleury
|
edb204bc5f
|
eliminate old expand-key-based eval history - ctrl process memory cache offers much better comprehensive replacement. also eliminate per-row and per-block eval views, since we've collapsed all eval views to one per list-of-watch-trees
|
2024-01-31 11:12:59 -08:00 |
|
Ryan Fleury
|
2bf8179fee
|
eliminate old registers/locals view states
|
2024-01-31 10:49:47 -08:00 |
|
Ryan Fleury
|
4e9cf2ef89
|
eliminate old locals view path; dont constantly mutate root expressions, simply query locals & build blocks
|
2024-01-31 10:48:49 -08:00 |
|
Ryan Fleury
|
14db7dbab4
|
stub out globals, thread-locals, types views; eliminate unnecssary uniquifier u64 in expand tree hash keys - simplify eval watch views to using a single eval view for the entire view, rather than allocating one per root expression. expand keys are now simply comprised of parent hash * child num
|
2024-01-31 10:39:18 -08:00 |
|
Ryan Fleury
|
8aac3f7bda
|
escape textual string data before visualizing it in single-line eval visualization
|
2024-01-31 09:22:47 -08:00 |
|
Ryan Fleury
|
385014adcb
|
raddbg nil tables, autofill empty tables with 1-sized nils; use element-from-idx wrapper to bounds-check and nilify all out-of-bounds raddbg table accesses
|
2024-01-31 08:43:33 -08:00 |
|
Ryan Fleury
|
a6f42502ec
|
symbol lister -> show procedure # in debug info, source location, name in tooltip; busyloop to wait to commit new fuzzy search results if scope touches active; sort fuzzy match results
|
2024-01-31 07:22:07 -08:00 |
|
Ryan Fleury
|
94d2be1683
|
some hover eval adjustments
|
2024-01-31 06:29:25 -08:00 |
|
Ryan Fleury
|
09f2b83603
|
fix function name breakpoint serialization
|
2024-01-31 06:20:49 -08:00 |
|
Ryan Fleury
|
00594a841a
|
notes
|
2024-01-30 14:44:11 -08:00 |
|
Ryan Fleury
|
2731bdac59
|
extend fuzzy search cache nodes to having 3 buckets - 3rd bucket can be used to abort working copy, and speed an updated query along
|
2024-01-30 14:19:11 -08:00 |
|
Ryan Fleury
|
6e456424b0
|
handle thread name events correllated with only TID, without corresponding thread entity - correllate upon thread creation as-needed
|
2024-01-30 13:50:23 -08:00 |
|
Ryan Fleury
|
c700264445
|
use explicit thread name exception thread ID parameter, when not implicit
|
2024-01-30 13:11:37 -08:00 |
|
Ryan Fleury
|
d9f69cdf14
|
complete first pass of fuzzy matching symbol lister for go-to-name, and setting function breakpoints
|
2024-01-30 12:58:24 -08:00 |
|
Ryan Fleury
|
4ef814acb5
|
fix more tab bar stuff; further sketchout of asynchronous dbgi layer fuzzy searching
|
2024-01-30 09:57:15 -08:00 |
|
Ryan Fleury
|
d139c2874c
|
add optional command spec restriction to cmd param slot -> view spec table; eliminate mouse testing when windows are not focused
|
2024-01-30 09:14:59 -08:00 |
|
Ryan Fleury
|
c61ff1910c
|
split ui view clamp rule into separate x/y flags
|
2024-01-30 08:02:25 -08:00 |
|
Ryan Fleury
|
c9b22acd5a
|
sketch out symbol lister view; float fuzzy matching code into base string layer; bugfix unnecessary ui layer view clamping
|
2024-01-30 07:59:24 -08:00 |
|
Ryan Fleury
|
38af1a5cab
|
fix bottom tab clipping
|
2024-01-30 06:52:03 -08:00 |
|
Ryan Fleury
|
fe5f38c306
|
only retry findthread given missing debug info or RIP if ctrl thread is stopped
|
2024-01-30 06:33:16 -08:00 |
|
Ryan Fleury
|
f130f23b3f
|
include jmc line number hacks in line step-over and step-into trap-net
|
2024-01-30 06:18:02 -08:00 |
|
Ryan Fleury
|
aa31afcd24
|
bump patch version, mule_main -> common link flags
|
2024-01-29 17:39:20 -08:00 |
|
Ryan Fleury
|
49f7fa9fa3
|
notes; load user/profile -> open user/profile
|
2024-01-29 17:31:47 -08:00 |
|
Ryan Fleury
|
9b8c0e32b5
|
hover eval change visualization
|
2024-01-29 17:21:25 -08:00 |
|
Ryan Fleury
|
2518eaf57c
|
pass over line info colors, enable source-hover-line-info-viz, a few other visual improvements/tweaks
|
2024-01-29 16:54:31 -08:00 |
|
Ryan Fleury
|
d2bdf512cf
|
in the case of unspecified colors in cfg, default fill them from the preset theme with the most similar background; this will mean that even with totally custom themes, as new color codes are added to the frontend, people will get sensible defaults. if they are just using a preset, then they will get the default new values by default
|
2024-01-29 16:24:41 -08:00 |
|
Ryan Fleury
|
0ce5239404
|
prefer serializing theme presets, if applicable
|
2024-01-29 16:13:08 -08:00 |
|
Ryan Fleury
|
83e8bb8ddd
|
actually still need corner sdf sample with sufficient softness as well
|
2024-01-29 15:58:15 -08:00 |
|
Ryan Fleury
|
afe105da31
|
eliminate further useless sdf sampling in shaders; eliminate useless borders in ui, eliminating more overdraw; eliminate tab bar clipping issue
|
2024-01-29 15:52:08 -08:00 |
|
Ryan Fleury
|
f6e7db7c3a
|
clean up ui box hierarchy rendering path, to eliminate duplicate node visits, causing a lot of extra dumb overdraw etc.
|
2024-01-29 15:30:59 -08:00 |
|
Ryan Fleury
|
d1fde3c908
|
fix busted synchronization in non-file-backed txti buffer edits; fix some snapping issues in Output view
|
2024-01-29 13:57:24 -08:00 |
|
Ryan Fleury
|
baca24c037
|
fix leftover event consumption tautological rule; fix a few small visual issues
|
2024-01-29 12:53:09 -08:00 |
|
Ryan Fleury
|
57fb21adf7
|
always allocate byte dirty/unreadable flags in ctrl process memory cache lookup, rather than trusting caller to check
|
2024-01-29 11:56:34 -08:00 |
|
Ryan Fleury
|
3fd9014c20
|
feed user-specified strings in cfg serialization/deserialization through escaping/unescaping path -- escape all double-quotes before serialization, de-escape when deserializing
|
2024-01-29 11:51:12 -08:00 |
|
Ryan Fleury
|
1ade5e44fa
|
do not strip quotations from command line arguments when launching debuggee processes, as otherwise quoted arguments with spaces will be broken apart in inconsistent & unintended ways; fix utf16 decoding with certain ranges of codepoints
|
2024-01-29 11:28:58 -08:00 |
|
Ryan Fleury
|
28e258b5dc
|
dont assume valid slice from process memory cache grab
|
2024-01-27 10:46:41 -08:00 |
|
Ryan Fleury
|
967936cef6
|
pass over rules in picking step-into entry point. right now we don't exactly have a trivial way of checking if an entry point truly was defined by a user. but if line info exists, and the file seems local, and there is a procedure name for an EXE's built-in entry point address, then we can at least guarantee that there is source for the entry point, and thus can serve as an acceptable entry point. this currently does not take into account cases where the OBJ path is not local, but the user overrides the file paths to have source. if the entry point is determined to be non-user-defined, then everything falls back to the usual paths - try WinMain, WinMainCRTStartup, etc., and then override with explicit custom entry points if needed. not great, currently, w.r.t. detecting if the entry point is in user code. maybe can check more info in the unit later...
|
2024-01-26 20:37:36 -08:00 |
|
Ryan Fleury
|
04b5b362bc
|
fix deadlock in launch_and_init - don't hold dbgi scopes open too aggressively, as we may need to eliminate dbgi which they refer to.
|
2024-01-26 19:04:30 -08:00 |
|
Ryan Fleury
|
f047a0beac
|
slight logo tweaks
|
2024-01-26 17:37:15 -08:00 |
|
Ryan Fleury
|
7355389e19
|
ohhhh my godd pt 2
|
2024-01-26 14:25:46 -08:00 |
|
Ryan Fleury
|
5f8ec62b4c
|
ohhhh myyy gooood
|
2024-01-26 14:23:54 -08:00 |
|
Ryan Fleury
|
207e46c8e8
|
prefer exe header's default entry point if it doesn't match expected defaults
|
2024-01-26 13:59:17 -08:00 |
|
Ryan Fleury
|
b76a8b9854
|
oops - do not ring_write in reader path... also fix silly shader thing
|
2024-01-26 13:51:57 -08:00 |
|
Ryan Fleury
|
6b7588b4b3
|
oops;git status
|
2024-01-26 13:51:33 -08:00 |
|
Ryan Fleury
|
455dac958c
|
first pass at asynchronous file streaming -> hash store layer; fix non-windowed memory access in watch window when doing change visualization, causing major performance regression with large arrays; fix some extra jank with truncated-string-hover & help labels
|
2024-01-26 11:47:25 -08:00 |
|
Ryan Fleury
|
0974337450
|
oops, fix function pointer display
|
2024-01-26 09:50:03 -08:00 |
|
Ryan Fleury
|
fea74aedd8
|
visualize global variable symbol pointers after addresses only on void*s (keep function symbol visualization for function pointer types); otherwise there is real content to visualize
|
2024-01-26 09:24:35 -08:00 |
|
Ryan Fleury
|
89af8124c7
|
ui truncated string hovering -> display full string as a tooltip
|
2024-01-26 09:04:29 -08:00 |
|
Ryan Fleury
|
33f5d4f5b1
|
default animation rate tweaks
|
2024-01-26 07:59:04 -08:00 |
|
Ryan Fleury
|
88a218e36e
|
visual jank-fix/polish pass
|
2024-01-26 07:43:40 -08:00 |
|
Ryan Fleury
|
f69176ee4e
|
dbgi layer: treat <header-sized raddbg files as out-of-date
|
2024-01-26 06:14:02 -08:00 |
|
Ryan Fleury
|
8c0708d2ab
|
remove unnecessary idx run iterator assertion in converter; 'twas asserting that no nodes remained in the bake phase when reaching the end of the idx run section, but this does not hold in all cases (e.g. in the case where there is an empty idx run added last)
|
2024-01-26 06:08:12 -08:00 |
|
Ryan Fleury
|
21deaace66
|
fix focus visualization seam given new shaders
|
2024-01-25 14:20:11 -08:00 |
|
Ryan Fleury
|
3aa602eca7
|
fix satval picker rendering, with new shader performance improvements
|
2024-01-25 14:15:24 -08:00 |
|