Commit Graph

  • 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 Ryan Fleury 2024-01-31 10:39:18 -08:00
  • 8aac3f7bda escape textual string data before visualizing it in single-line eval visualization Ryan Fleury 2024-01-31 09:22:47 -08:00
  • 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 Ryan Fleury 2024-01-31 08:43:33 -08:00
  • 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 Ryan Fleury 2024-01-31 07:21:52 -08:00
  • 94d2be1683 some hover eval adjustments Ryan Fleury 2024-01-31 06:29:25 -08:00
  • 09f2b83603 fix function name breakpoint serialization Ryan Fleury 2024-01-31 06:20:49 -08:00
  • 00594a841a notes Ryan Fleury 2024-01-30 14:44:11 -08:00
  • 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 Ryan Fleury 2024-01-30 14:19:11 -08:00
  • 6e456424b0 handle thread name events correllated with only TID, without corresponding thread entity - correllate upon thread creation as-needed Ryan Fleury 2024-01-30 13:50:23 -08:00
  • c700264445 use explicit thread name exception thread ID parameter, when not implicit Ryan Fleury 2024-01-30 13:11:37 -08:00
  • d9f69cdf14 complete first pass of fuzzy matching symbol lister for go-to-name, and setting function breakpoints Ryan Fleury 2024-01-30 12:58:24 -08:00
  • 4ef814acb5 fix more tab bar stuff; further sketchout of asynchronous dbgi layer fuzzy searching Ryan Fleury 2024-01-30 09:57:15 -08:00
  • d139c2874c add optional command spec restriction to cmd param slot -> view spec table; eliminate mouse testing when windows are not focused Ryan Fleury 2024-01-30 09:14:59 -08:00
  • c61ff1910c split ui view clamp rule into separate x/y flags Ryan Fleury 2024-01-30 08:02:25 -08:00
  • c9b22acd5a sketch out symbol lister view; float fuzzy matching code into base string layer; bugfix unnecessary ui layer view clamping Ryan Fleury 2024-01-30 07:59:24 -08:00
  • 38af1a5cab fix bottom tab clipping Ryan Fleury 2024-01-30 06:52:03 -08:00
  • fe5f38c306 only retry findthread given missing debug info or RIP if ctrl thread is stopped Ryan Fleury 2024-01-30 06:33:16 -08:00
  • f130f23b3f include jmc line number hacks in line step-over and step-into trap-net Ryan Fleury 2024-01-30 06:18:02 -08:00
  • aa31afcd24 bump patch version, mule_main -> common link flags v0.9.7-alpha Ryan Fleury 2024-01-29 17:39:20 -08:00
  • 49f7fa9fa3 notes; load user/profile -> open user/profile Ryan Fleury 2024-01-29 17:31:47 -08:00
  • 9b8c0e32b5 hover eval change visualization Ryan Fleury 2024-01-29 17:21:25 -08:00
  • 2518eaf57c pass over line info colors, enable source-hover-line-info-viz, a few other visual improvements/tweaks Ryan Fleury 2024-01-29 16:54:31 -08:00
  • 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 Ryan Fleury 2024-01-29 16:24:41 -08:00
  • 0ce5239404 prefer serializing theme presets, if applicable Ryan Fleury 2024-01-29 16:13:08 -08:00
  • 83e8bb8ddd actually still need corner sdf sample with sufficient softness as well Ryan Fleury 2024-01-29 15:54:47 -08:00
  • afe105da31 eliminate further useless sdf sampling in shaders; eliminate useless borders in ui, eliminating more overdraw; eliminate tab bar clipping issue Ryan Fleury 2024-01-29 15:52:08 -08:00
  • f6e7db7c3a clean up ui box hierarchy rendering path, to eliminate duplicate node visits, causing a lot of extra dumb overdraw etc. Ryan Fleury 2024-01-29 15:30:59 -08:00
  • d1fde3c908 fix busted synchronization in non-file-backed txti buffer edits; fix some snapping issues in Output view Ryan Fleury 2024-01-29 13:57:24 -08:00
  • baca24c037 fix leftover event consumption tautological rule; fix a few small visual issues Ryan Fleury 2024-01-29 12:53:09 -08:00
  • 57fb21adf7 always allocate byte dirty/unreadable flags in ctrl process memory cache lookup, rather than trusting caller to check Ryan Fleury 2024-01-29 11:56:34 -08:00
  • 3fd9014c20 feed user-specified strings in cfg serialization/deserialization through escaping/unescaping path -- escape all double-quotes before serialization, de-escape when deserializing Ryan Fleury 2024-01-29 11:51:12 -08:00
  • 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 Ryan Fleury 2024-01-29 11:28:58 -08:00
  • 28e258b5dc dont assume valid slice from process memory cache grab Ryan Fleury 2024-01-27 10:46:41 -08:00
  • 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... Ryan Fleury 2024-01-26 20:37:36 -08:00
  • 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. Ryan Fleury 2024-01-26 19:04:30 -08:00
  • f047a0beac slight logo tweaks Ryan Fleury 2024-01-26 17:37:15 -08:00
  • 7355389e19 ohhhh my godd pt 2 Ryan Fleury 2024-01-26 14:25:46 -08:00
  • 5f8ec62b4c ohhhh myyy gooood Ryan Fleury 2024-01-26 14:23:54 -08:00
  • 207e46c8e8 prefer exe header's default entry point if it doesn't match expected defaults Ryan Fleury 2024-01-26 13:59:17 -08:00
  • b76a8b9854 oops - do not ring_write in reader path... also fix silly shader thing Ryan Fleury 2024-01-26 13:51:57 -08:00
  • 6b7588b4b3 oops;git status Ryan Fleury 2024-01-26 13:51:33 -08:00
  • 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 Ryan Fleury 2024-01-26 11:47:25 -08:00
  • 0974337450 oops, fix function pointer display Ryan Fleury 2024-01-26 09:50:03 -08:00
  • 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 Ryan Fleury 2024-01-26 09:24:35 -08:00
  • 89af8124c7 ui truncated string hovering -> display full string as a tooltip Ryan Fleury 2024-01-26 09:04:29 -08:00
  • 33f5d4f5b1 default animation rate tweaks Ryan Fleury 2024-01-26 07:59:04 -08:00
  • 88a218e36e visual jank-fix/polish pass Ryan Fleury 2024-01-26 07:43:40 -08:00
  • f69176ee4e dbgi layer: treat <header-sized raddbg files as out-of-date Ryan Fleury 2024-01-26 06:14:02 -08:00
  • 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) Ryan Fleury 2024-01-26 06:08:12 -08:00
  • 21deaace66 fix focus visualization seam given new shaders Ryan Fleury 2024-01-25 14:20:11 -08:00
  • 3aa602eca7 fix satval picker rendering, with new shader performance improvements Ryan Fleury 2024-01-25 14:15:24 -08:00
  • 1319a23f98 raddbg_from_pdb: cv struct2/class2 paths Ryan Fleury 2024-01-25 13:23:50 -08:00
  • c8c5da4f4a improve flow around multi-target debugging: prefer one-target-only in default path; only enable command line specified target if present; explicit commands for enabling/disabling targets, as well as mutually-exclusive selection of targets; make default clicking path in UI go through mutually exclusive selection, whereas ctrl+clicks will do multi-target selection Ryan Fleury 2024-01-25 11:49:05 -08:00
  • dd38822a4c Merge branch 'dev' Ryan Fleury 2024-01-25 11:22:06 -08:00
  • 644a94d5ef fixing clang build Martins Mozeiko 2024-01-25 11:10:34 -08:00
  • fc9449a2d5 make sure github action fails on error Martins Mozeiko 2024-01-25 11:10:09 -08:00
  • 168f66cc99 further progress on new process memory cache; first pass at visualizing changed watch window rows, based on ctrl process memory cache history Ryan Fleury 2024-01-25 11:17:16 -08:00
  • 38b113f1d0 simplify & consolidate ctrl layer process memory caching mechanisms - move all non-necessarily-synchronous caching to background memory streaming thread cache Ryan Fleury 2024-01-25 10:04:03 -08:00
  • b14b9f0344 strip out ctrl process memory cache fresh flags & hash history, since both will be replaced by hash store layer's capabilities Ryan Fleury 2024-01-25 09:09:36 -08:00
  • d0c3d9dc21 extend ctrl process memory cache reads with freshness info - it is a bit too coarse grained at page granularity, that should've been easy to predict... in any case, to start addressing that, start keeping >1 hash key hash history in hash store layer, such that history may be preserved for a bit longer & diff'd with new key hashes Ryan Fleury 2024-01-25 09:06:03 -08:00
  • 76b2facbf4 restrict menu bar keyboard shortcuts to being modifierless Ryan Fleury 2024-01-25 07:47:11 -08:00
  • 813554fa62 detect alt-held character inputs; short-circuit menu bar shenanigans on chars-with-alt Ryan Fleury 2024-01-25 07:29:55 -08:00
  • 7cf0854178 reimplement run-to-line and run-to-address with temporary user breakpoints which die-on-stop, which provides the desired flow for e.g. run-to-line while nothing runs Ryan Fleury 2024-01-25 07:07:22 -08:00
  • ed7d31d7ea support C++ style scope resolution in txti buffer * point -> expression range path Ryan Fleury 2024-01-25 06:18:47 -08:00
  • 66b56789c6 eval: support for multiple namespacified fallback token lookups, to account for the several possibilities of namespaces & nested namespaces & static class members nested inside of namespaces & namespaces within namespaces within classes within namespaces & wow C++ is very bad; also ui: temporarily disable space-to-click, as it conflicts with typing and this case is not yet well supported Ryan Fleury 2024-01-25 06:15:28 -08:00
  • 96b0dd0783 note on bilinear sampling requirement (e.g. not interpolating per-vertex coordinates) for specific UI Ryan Fleury 2024-01-24 16:10:11 -08:00
  • 2dbcc26cdb switch local dev debugger to using local user/profile files, to explicitly separate from stable build Ryan Fleury 2024-01-24 15:26:12 -08:00
  • 56332b729f dont feed forward scroll events either v0.9.6-alpha Ryan Fleury 2024-01-24 14:07:25 -08:00
  • 55e06d0652 eliminate unnecessary waits in empty disassembly view Ryan Fleury 2024-01-24 14:03:37 -08:00
  • 0d1ccd7264 switch to partner file command - quick way to switch from .h to .c, or similar Ryan Fleury 2024-01-24 13:59:31 -08:00
  • 4ddb4d0fed consume menu bar events properly Ryan Fleury 2024-01-24 13:38:37 -08:00
  • 26b8603a59 when building locals map given a raddbg*voff, capture locals from previously-exited scopes Ryan Fleury 2024-01-24 13:00:17 -08:00
  • 8789e763fd equip os events with timestamp; re-enable leftover event feed-forward but add timeout Ryan Fleury 2024-01-24 12:38:19 -08:00
  • f30d9ceaa9 name match against later-added global variable symbols, since apparently PDBs can be produced to keep stale global symbols around to Ryan Fleury 2024-01-24 12:25:53 -08:00
  • f3ca6ff9b3 temporarily disable leftover event piping... Ryan Fleury 2024-01-24 12:14:33 -08:00
  • d98a04ad22 correct animation response to new events Ryan Fleury 2024-01-24 12:02:36 -08:00
  • 69f77456b8 dbgi: fix incorrect grab of raddbg header; raddbg_from_pdb: fix unsigned interpretation of offsets in defrange symbols; fix incorrect byte position/size encoding ordering in some location info cases Ryan Fleury 2024-01-24 11:57:17 -08:00
  • 3edc67e19e only equip views with entities if their spec dictates that they're parameterized by entities Ryan Fleury 2024-01-24 11:19:18 -08:00
  • d07ae91cb4 add version encoding difference detection in dbgi layer when deciding whether or not to re-convert; this will allow using the raddbg encoding version as a 'generation number', as the encoding changes, to prevent cases where the debugger loads old versions & treats them as new unknowingly Ryan Fleury 2024-01-24 10:41:55 -08:00
  • 77190c4aa0 improve rules for choosing file alternatives -> try to seek upward src/dst paths, and map only at the first non-matching node; this should map matching directories etc. Ryan Fleury 2024-01-24 09:29:02 -08:00
  • 959550151a preserve per-event mouse coordinates; prefer in ui signal producing codepath Ryan Fleury 2024-01-23 20:17:50 -08:00
  • be252406bd if both snap-destination src & disasm for a find-code-location both occupy the same panel, prefer src if src was selected, but prefer disasm if disasm was selected Ryan Fleury 2024-01-23 19:57:39 -08:00
  • 2b265e7ced also consume window close events Ryan Fleury 2024-01-23 18:59:27 -08:00
  • 00ee0e58db oops! consume text input events... Ryan Fleury 2024-01-23 18:56:55 -08:00
  • fd0feefcf2 pipe through left-over OS events to subsequent frames; do not drop them Ryan Fleury 2024-01-23 16:44:57 -08:00
  • 04def874eb also don't assume we even have the PE exception data directory Ryan Fleury 2024-01-23 15:49:56 -08:00
  • 94b1888073 dont assume in-bounds intel pdata ranges Ryan Fleury 2024-01-23 15:45:21 -08:00
  • 140c8a3fee Merge branch 'master' into dev Ryan Fleury 2024-01-23 15:34:27 -08:00
  • e3651c1ef4 communicate ctrl -> df start/stop events on launch (as well as normal runs) - prohibit demoting high-level step operations into launches if targets are running, but no process creation events have been identified yet Ryan Fleury 2024-01-23 15:23:51 -08:00
  • 1da1239c7c doing blur shader without alpha blending Martins Mozeiko 2024-01-23 11:45:42 -08:00
  • 44fa806334 bugfix when calculating kernel weights for smaller than 1px blur size Martins Mozeiko 2024-01-23 14:30:55 -08:00
  • d4474b5a31 introduce extra query selection state, to allow mouse-driven controls for deselecting a window's query ui, then reselecting it (e.g. to copy things from source view) Ryan Fleury 2024-01-23 15:00:42 -08:00
  • 74fa729a58 do not assume the presence of a module when forming an eval parse ctx; it must be based on process*vaddr, not module*voff, because you might be evaluating from code without a module Ryan Fleury 2024-01-23 14:44:39 -08:00
  • 02aa04f242 also allow space for keyboard clicks Ryan Fleury 2024-01-23 14:31:44 -08:00
  • 0e1869e6c9 eliminate assumptions of module presence in unwinding codepaths, & callstack UI; fixes callstacks for JIT'd code Ryan Fleury 2024-01-23 14:26:43 -08:00
  • ca9d9791d3 fix output view keyboard navigation/focus Ryan Fleury 2024-01-23 13:52:09 -08:00
  • 56df75cc20 separation of file-only, folder-only and file-or-folder selection paths, slight tweaks to filesystem lister behavior for each; other small visual tweaks/fixes Ryan Fleury 2024-01-23 13:47:14 -08:00
  • fa981597ea add support in ui layer for re-rooting keyboard focus stack, which short-circuits the focus-off search through the focus stack Ryan Fleury 2024-01-23 13:08:00 -08:00
  • 87cd790f70 dedicated command for picking folders & improved flow when doing directory-only selection Ryan Fleury 2024-01-23 13:03:21 -08:00
  • 4e561b1b38 fix flipped y transform application in upgraded shader Ryan Fleury 2024-01-23 12:50:26 -08:00