Ryan Fleury
|
b7a14aa41c
|
explicitly show error if decoding line machine code or line info fails
|
2024-04-10 13:36:52 -07:00 |
|
Ryan Fleury
|
56bc399fd5
|
initial pass for compression in converter; decompression in debuggerdbgi layer
|
2024-04-10 09:33:55 -07:00 |
|
Ryan Fleury
|
d560f8c734
|
fix backslash escaping rules in cfg serialization; fix small scrolling (e.g. from trackpad) often being truncated to having no effect; fixed hanging when set-thread-name specifies a non-readable address
|
2024-04-09 07:37:53 -07:00 |
|
Ryan Fleury
|
36b50981ff
|
fix conditional breakpoints, post demon2/ctrl passes
|
2024-04-05 11:38:14 -07:00 |
|
Ryan Fleury
|
32114c3215
|
begin cleanup/naming pass over view rules
|
2024-04-05 10:17:38 -07:00 |
|
Ryan Fleury
|
a8ece647c1
|
simplify and remove temporary polish from minified bitmap viewer
|
2024-04-02 15:31:02 -07:00 |
|
Ryan Fleury
|
e0879ac569
|
stub out graph view rule
|
2024-04-02 15:18:16 -07:00 |
|
Ryan Fleury
|
0eb8216ea0
|
first pass at dedicated bitmap tab view, & all the machinery of going from watch window w/ view rule -> dedicated ui
|
2024-04-02 14:33:17 -07:00 |
|
Ryan Fleury
|
cd1a0a4cb5
|
tab query serialization/deserialization; only enable for view rule defined view specs
|
2024-04-02 10:42:31 -07:00 |
|
Ryan Fleury
|
1b95eacd08
|
stub out visualizer tab view hooks for bitmap, geo, text, disasm viewers; pass down cfg node trees for open-tab command; visualize query string in tab titles
|
2024-04-02 10:35:19 -07:00 |
|
Ryan Fleury
|
546c544ae0
|
eliminate eval-viewer view - instead we can have the gfx view rule spec table optionally define tab view specs itself, and those can be separately registered from the sort of 'base' tab views. then we can map from gfx-view-rule -> dedicated-tab-view-spec
|
2024-04-02 10:16:53 -07:00 |
|
Ryan Fleury
|
3ea67dd7cf
|
eliminate old disasm layer initialization
|
2024-04-01 15:09:41 -07:00 |
|
Ryan Fleury
|
52295e5e06
|
first pass at view rule lookup cache... this might not be the right thing here
|
2024-04-01 14:48:48 -07:00 |
|
Ryan Fleury
|
63123d69d1
|
set up auto view rule entities, serialization, & editor ui, for automatically mapping specific types to specific view rules
|
2024-04-01 14:30:48 -07:00 |
|
Ryan Fleury
|
835eae208a
|
extend eval viz pipeline with split between edit/display expression strings per-block and per-row. this allows reconstruction of the string that would lead to the same eval as a row (even if it is auto-generated by e.g. expanding a root-level row; also allow -- to extend eval expressions with passthrough text, used for view rules
|
2024-04-01 13:56:07 -07:00 |
|
Ryan Fleury
|
cfb34ec560
|
C++ namespace examples
|
2024-04-01 11:11:27 -07:00 |
|
Ryan Fleury
|
c45b12cfac
|
only export executable name, not full cmdline specified path in converter
|
2024-04-01 10:25:27 -07:00 |
|
Ryan Fleury
|
7c0ce2ab54
|
fix incorrect skip-to-end in new pdb -> raddbgi converter member parsing, in some cases (particularly noticeable in C++ structs with vtable members)
|
2024-03-30 19:44:20 -07:00 |
|
Ryan Fleury
|
693d20ec1a
|
fix incorrect generation of modifier flags, container types, and out-of-order pointer/modifier types in new pdb -> raddbgi converter. fixes many 'nil type' issues, missing this ptr, etc.
|
2024-03-30 19:29:16 -07:00 |
|
Ryan Fleury
|
a6db711f2d
|
quick fix to not omit opl line records in breakpad_from_pdb
|
2024-03-29 15:53:18 -07:00 |
|
Ryan Fleury
|
f2dd1e3c2d
|
further sketching & setting up for escape-hatch-style view rule uis
|
2024-03-29 14:02:46 -07:00 |
|
Ryan Fleury
|
81c79c0ac2
|
sketch out parts of 'whole ui' eval viz pipeline build stage; fix copypaste issue with string viz
|
2024-03-29 12:52:19 -07:00 |
|
Ryan Fleury
|
c1b92c1b27
|
reintroduce support for address/code-bytes toggling in disassembly view; also reintroduce support for toggle-watch-expr and goto-name commands
|
2024-03-29 11:51:20 -07:00 |
|
Ryan Fleury
|
eec124c53b
|
eliminate old text searching thread code
|
2024-03-29 11:28:45 -07:00 |
|
Ryan Fleury
|
8c5c0be040
|
ui: further improvements to double/triple dragging detection; df: use double/triple dragging to determine mouse-drag-range. dbl -> use token range, triple -> use line. pick appropriate side of mouse drag range on drag based on side of mark.
|
2024-03-29 11:17:01 -07:00 |
|
Ryan Fleury
|
2842901f9c
|
ui: extend box->signal path with double-drag, triple-drag info
|
2024-03-29 10:58:05 -07:00 |
|
Ryan Fleury
|
6eb8e37d4d
|
default to hexadecimal radix in register-mode hover-evaluations
|
2024-03-29 10:42:14 -07:00 |
|
Ryan Fleury
|
7496f3b8cc
|
dont over-ambitiously respond to exceptions/errors on kill/detach
|
2024-03-29 10:22:06 -07:00 |
|
Ryan Fleury
|
7c3fabfc39
|
wchar test in mule_main
|
2024-03-29 10:13:29 -07:00 |
|
Ryan Fleury
|
4b3941c17f
|
sketch out non-utf8 string visualization in frontend eval paths; simple retry mechanism for large memory reads that may fail across page boundaries in ctrl process memory cache
|
2024-03-29 10:09:57 -07:00 |
|
Ryan Fleury
|
60030b298b
|
bitfield support in address mode -> value mode evaluation path
|
2024-03-29 09:51:38 -07:00 |
|
Ryan Fleury
|
60e1f105e4
|
raddbgi: correctly encode bitfields; type_graph: correctly stringify bitfield types
|
2024-03-29 09:22:13 -07:00 |
|
Ryan Fleury
|
d9675f2565
|
allow assembly-style dereferences in eval parser; register/register-alias syntax highlighting
|
2024-03-29 08:52:46 -07:00 |
|
Ryan Fleury
|
7c7b44e940
|
attempt to auto-resolve numeric evaluations into addresses in frontend eval path
|
2024-03-29 08:52:45 -07:00 |
|
Ryan Fleury
|
5aa8aa1c66
|
fix expandability rules for function pointer types; identifiers -> keywords in disassembly
|
2024-03-28 19:56:33 -07:00 |
|
Ryan Fleury
|
7f50beae2a
|
notes
|
2024-03-28 15:40:28 -07:00 |
|
Ryan Fleury
|
3931edb3f1
|
notes
|
2024-03-28 15:21:25 -07:00 |
|
Ryan Fleury
|
1904d4ca0d
|
support copy from disasm (finally)
|
2024-03-28 15:19:25 -07:00 |
|
Ryan Fleury
|
0ead1c034c
|
eliminate old dasm layer, since we're all caught up with dasm_cache
|
2024-03-28 14:58:25 -07:00 |
|
Ryan Fleury
|
09f74805e0
|
restore old demon layer linux implementation, to not have to seek back in version control to find it when porting
|
2024-03-28 14:54:52 -07:00 |
|
Ryan Fleury
|
f75ae9eb4a
|
transition disassembly command processing paths to dasm cache
|
2024-03-28 14:53:38 -07:00 |
|
Ryan Fleury
|
2f5cc748d8
|
use disasm style parameters in dasm_cache disassembly path
|
2024-03-28 14:42:56 -07:00 |
|
Ryan Fleury
|
614b9bc537
|
extend dasm cache with style parameters; switch over primary disassembly ui path to dasm cache
|
2024-03-28 14:38:35 -07:00 |
|
Ryan Fleury
|
bcbb4142cf
|
plug in x64 intel-syntax disassembly 'language' into text analysis cache layer, to use that layer to naturally do parser/highlighter work for disassembly
|
2024-03-28 12:01:14 -07:00 |
|
Ryan Fleury
|
d3570e8147
|
further progress on disassembly cache; instead of caching the text via the disassembly cache, simply submit into the hash store; this allows the disassembly cache to be composed with other caches, like the text analysis cache. + plug this system into the disassembly view rule, so now we can disassemble arbitrary pointers in the watch window
|
2024-03-28 11:36:57 -07:00 |
|
Ryan Fleury
|
c91cd69536
|
first pass at new hash-store-based disassembly cache layer; can serve as a general-purpose asynchronous disassembly visualization cache layer, regardless of where that data ultimately comes from - can click into a file, process memory cache, etc.
|
2024-03-28 10:57:34 -07:00 |
|
Ryan Fleury
|
f46691d79a
|
dasm -> dasmi; make room for new dasm_cache layer
|
2024-03-28 09:45:41 -07:00 |
|
Ryan Fleury
|
dbb0c1e0a4
|
file_stream: solidify retry mechanism; df: multiline controls for text_cache-based info, begin porting over txti-based systems
|
2024-03-28 09:36:09 -07:00 |
|
Ryan Fleury
|
96ff5efe7c
|
allow delete/rename access on exe/debug handles
|
2024-03-28 08:54:08 -07:00 |
|
Ryan Fleury
|
a14d0f5b18
|
rewire up target colors with processes/modules/threads; use first module path for correllation rather than entities & id correllation
|
2024-03-27 15:25:27 -07:00 |
|
Ryan Fleury
|
22185cee5f
|
eliminate stuck-step disabling hack
|
2024-03-27 14:36:11 -07:00 |
|
Ryan Fleury
|
1da92b8dbc
|
store per-launch entry points in ctrl entity store; use to later correllate PIDs to custom entry points in run path
|
2024-03-27 14:24:06 -07:00 |
|
Ryan Fleury
|
291bf3875d
|
eliminate launch-and-init path, switch fully to separate 'launch' and 'run' paths; snap to selected thread if no stopper thread on stopped events;
|
2024-03-27 14:09:29 -07:00 |
|
Ryan Fleury
|
ee056aa45d
|
collapse user bp gathering helper, used only once
|
2024-03-27 12:29:45 -07:00 |
|
Ryan Fleury
|
53163f3610
|
ctrl: kill launch_and_handshake; begin extending run to be usable for launch-and-init and launch-and-run operations
|
2024-03-27 12:26:15 -07:00 |
|
Ryan Fleury
|
4899f1871b
|
correctly close module file handles on module unloading in new demon layer
|
2024-03-27 11:19:24 -07:00 |
|
Ryan Fleury
|
d73a3d4196
|
plug txt-layer-provided tokens into text view rule - both source code & text view rule are now completely powered via the txt visualization layer, rather than the special-purpose txti layer, which is now being retired
|
2024-03-26 16:47:15 -07:00 |
|
Ryan Fleury
|
4272258f99
|
txti -> txt; checkpoint #5
|
2024-03-26 16:38:12 -07:00 |
|
Ryan Fleury
|
8792c2280c
|
txti -> txt; checkpoint #4
|
2024-03-26 16:26:31 -07:00 |
|
Ryan Fleury
|
88798e4453
|
txti -> txt; checkpoint #3
|
2024-03-26 16:04:21 -07:00 |
|
Ryan Fleury
|
e80c69cb8f
|
txti -> txt; checkpoint #2
|
2024-03-26 16:00:43 -07:00 |
|
Ryan Fleury
|
40ed36df3f
|
txti -> txt; checkpoint #1
|
2024-03-26 15:31:39 -07:00 |
|
Ryan Fleury
|
88b692c840
|
eliminate fallback cache in text cache layer; we can use the hash store layer to rewind
|
2024-03-26 12:11:00 -07:00 |
|
Ryan Fleury
|
9dc484858a
|
eliminate geo cache fallback key/hash cache; we can just use the hash store to rewind
|
2024-03-26 11:59:54 -07:00 |
|
Ryan Fleury
|
f7e7aec355
|
bundle 'get key & stream' operation in process memory cache; eliminate old cache interaction in texture view rule hook
|
2024-03-26 11:55:15 -07:00 |
|
Ryan Fleury
|
7cf8da0b43
|
eliminate fallback key/hash pair cache in texture cache layer; we can rely on rewinding purely via the hash store layer
|
2024-03-26 11:50:44 -07:00 |
|
Ryan Fleury
|
4027338a2f
|
adjust stripe counts
|
2024-03-26 11:30:47 -07:00 |
|
Ryan Fleury
|
4bc82db69e
|
deduplicate txti/text_cache language stuff; port over odin lexing
|
2024-03-26 11:00:37 -07:00 |
|
Ryan Fleury
|
ca6e75d466
|
allow c++14 digit separators in c/c++ lexing
|
2024-03-26 10:42:46 -07:00 |
|
Ryan Fleury
|
6393766f82
|
deduplicate txti/txt layer lexing
|
2024-03-26 10:31:20 -07:00 |
|
Ryan Fleury
|
206d48b363
|
notes
|
2024-03-25 15:47:34 -07:00 |
|
Ryan Fleury
|
f561abfd63
|
show stopper-thread exception-info on entity tooltips, when applicable
|
2024-03-25 15:43:00 -07:00 |
|
Ryan Fleury
|
6d1c0d9f6d
|
louder & more informative exception info viz
|
2024-03-25 15:37:31 -07:00 |
|
Ryan Fleury
|
55146b547b
|
reading & organization pass over unwinding layer; deduplicate PE info with PE layer, move dwarf info to in-progress dwarf layer
|
2024-03-25 14:42:54 -07:00 |
|
Ryan Fleury
|
1c3792a3da
|
tighten architecture-specific path for unwinder
|
2024-03-25 13:34:43 -07:00 |
|
Ryan Fleury
|
e5df25b314
|
use stderr-based fatal crash reporting, rather than windows gui, with programs built as console interfaces rather than guis
|
2024-03-25 13:24:00 -07:00 |
|
Ryan Fleury
|
23c1ea0e68
|
ui: if only one view scroll axis is specified on a box, always use scroll info to fill it, regardless of which axis that scroll took place on
|
2024-03-25 13:02:17 -07:00 |
|
Ryan Fleury
|
aa85b2cdbb
|
correctly pass unicode environments to launched child processes; also treat unicode command line arguments correctly
|
2024-03-25 12:57:00 -07:00 |
|
Ryan Fleury
|
e136a67535
|
demon/win32: correctly report exception repetitions for unhandled exception cases
|
2024-03-25 11:00:00 -07:00 |
|
Ryan Fleury
|
83ecb4b86a
|
ctrl thread stepping machine: read initial stack-pointer-check-value *before* single-stepping stuck threads, otherwise we can obtain an incorrect stack check value if the single-step causes a call.
|
2024-03-22 17:27:54 -07:00 |
|
Ryan Fleury
|
c26274ac70
|
disable single-step-stuck-thread behavior when launching-and-initing, such that breakpoints on entry point will not be stepped over
|
2024-03-22 17:17:08 -07:00 |
|
Ryan Fleury
|
995804cc78
|
demon2 -> demon; eliminate original demon layer
|
2024-03-22 16:33:48 -07:00 |
|
Ryan Fleury
|
c9df04ca60
|
merge
|
2024-03-22 16:31:05 -07:00 |
|
Ryan Fleury
|
71f3d18bf7
|
notes
|
2024-03-22 16:30:04 -07:00 |
|
Ryan Fleury
|
928532f386
|
do not attempt to refresh tls base calculation cache, if targets running
|
2024-03-22 16:29:50 -07:00 |
|
Ryan Fleury
|
7cd524d39d
|
fix tls base calculation in demon2
|
2024-03-22 16:19:35 -07:00 |
|
Ryan Fleury
|
2c8c9a497c
|
parameterize ctrl thread registers cache with entity store, rather than relying on implicit demon-api-provided cache
|
2024-03-22 16:15:20 -07:00 |
|
Ryan Fleury
|
c636e1ad2e
|
extend demon2 with explicit separation between blocking ctrl mechanisms & passive access/introspection/writing mechanisms; extend demon2 api with access mechanism
|
2024-03-22 15:53:04 -07:00 |
|
Ryan Fleury
|
07bbf1b43c
|
organize demon2 by thread api
|
2024-03-22 15:15:33 -07:00 |
|
Ryan Fleury
|
ca01e66ea2
|
plug in tls root vaddr path
|
2024-03-22 14:12:40 -07:00 |
|
Ryan Fleury
|
14ac7141e7
|
double buffer member cache
|
2024-03-22 13:53:14 -07:00 |
|
Ryan Fleury
|
9de678ec22
|
disable debug heap by default; get unwindg path off caching layers & use demon reads directly
|
2024-03-22 13:51:26 -07:00 |
|
Ryan Fleury
|
e9129975e3
|
double buffer locals cache & tls base cache; introduce synchronizing mechanism for run vs. non-run ctrl thread states, to only attempt demon reads/queries during non-running times
|
2024-03-22 13:32:22 -07:00 |
|
Ryan Fleury
|
3994adae92
|
double-buffer frontend unwind cache
|
2024-03-22 11:56:28 -07:00 |
|
Ryan Fleury
|
982f2b6bab
|
extend process memory cache queries with output channel for staleness detection - in some cases this is crucial, in other cases you don't care & want to passively accept stale redsults
|
2024-03-22 10:33:20 -07:00 |
|
Ryan Fleury
|
a694a77eba
|
fix halting, unattached running, and caching generations in demon2
|
2024-03-21 16:49:34 -07:00 |
|
Ryan Fleury
|
54677e05ec
|
fix incorrect metagen pointer comparisons
|
2024-03-21 16:21:17 -07:00 |
|
Ryan Fleury
|
236214db25
|
eliminate unnecessary layers in frontend
|
2024-03-21 16:13:01 -07:00 |
|
Ryan Fleury
|
2c9ff37b2c
|
sketch out new unwind cache types
|
2024-03-21 13:53:12 -07:00 |
|
Ryan Fleury
|
1466b27385
|
tweak registers cache lookup rules, to correctly return stale results on failed reads
|
2024-03-21 11:48:48 -07:00 |
|