u/kimmadsen

theDANE v2 - Superb editor, debugger, profiler, reverse engineering - FREE
▲ 11 r/delphi

theDANE v2 - Superb editor, debugger, profiler, reverse engineering - FREE

https://preview.redd.it/f5uogxcm3hih1.png?width=800&format=png&auto=webp&s=c82a8c4315f09ab5bc30d2ab864b8784cc7d958a

Disclosure: I wrote this. It's my project, so treat the enthusiasm accordingly.

theDANE started as a native Windows editor for Pascal. Version 1 was just that — highlighting, a BNF-driven reformatter, compare/merge, a hex editor. Version 2 keeps all of it and adds the parts that used to mean leaving the window.

Debugging. A native Win32/x64 engine that reads TD32 (Delphi's format) and DWARF directly — no GDB in the middle. For FreePascal that covers -gw2-gw3 and -gw4-gw4's line tables have a discrepancy between what the spec says and what the compiler emits, which theDANE detects exactly rather than heuristically, so all three levels behave the same.

Break-at-entry lands on your program's own body rather than a runtime stub, and Ctrl+F7 runs to the first line that actually has source — useful when you've attached to something whose startup you don't care about.

Profiling, four kinds. Sampling (wall-clock and cycle counts side by side, so you can tell "waiting" from "computing"), exact instrumentation per routine and per line with heat painted into the gutter, line coverage accumulated across runs, and allocation profiling. The line probes work on x64 as well as x86 — a probe in the middle of a routine has to preserve the flags, or your if quietly takes the other branch and the measurement changes the result.

Binary work. Recursive-descent analysis producing a byte map, xrefs, basic blocks and a function list; a control flow graph; strings, pointer tables and arrays found from the code that references them. Plus the bit I'm most pleased with: Delphi class recovery from VMTs. Drop in a stripped executable and sub_00401A40 comes back as TCustomerForm.btnSaveClick — not inference, the names are genuinely in the file, and theDANE knows the layout because it's the kind of tool that builds these binaries. Everything you work out is stored in a plain-text .dane file beside the binary, so it diffs and merges in git.

Scripting. MIMERCode — a Pascal-flavoured language with contracts, typed exceptions, channels and a UI layer. Automation commands are one self-describing .mc each with their own hotkey and menu placement. The same language writes debug value formatters (how your types display at a breakpoint) and binary parsers. The API signatures are registered rather than just documented, so they feed the editor's own completion while you write the script.

local Ed := open("thedane://editor")
Ed.ReplaceSelection(UpperCase(Ed.SelectedText()))

AI, with the interesting part being what it's allowed to do. Providers are Claude, any OpenAI-protocol endpoint, Ollama, or theMIMER — local or remote, your choice, keys encrypted per Windows account. The whole layer is inert until you configure one, and a build made without AI support doesn't carry the menu at all.

The design decisions worth arguing about aren't "which model", they're these:

  • Write tools are invisible at the lower capability level. Not disabled and refused — not offered to the model in the first place, so it can't decide to try.
  • Every edit arrives as a diff you approve, expressed as text to match rather than line numbers, so a stale line count can't land a change in the wrong place.
  • Generated artefacts are verified before you see them. Ask for a binary parser and the MIMERCode that comes back has been linted and run against your actual file first. Ask for tests and they're compiled and corrected before they're shown.
  • Function naming in a disassembly has a confidence floor (nothing written below 60%), everything it writes is tagged [ai] or [ai?], and a batch run never overwrites a name you gave.
  • Uploading a binary is a refuse, not a warn.
  • There's a complete activity log, so "what did it actually do" always has an answer.

It also writes MIMERCode using a system prompt generated from the same signature registry that drives the editor's completion — so the assistant and the popup are working from one definition of the API rather than two that drift.

Personalities. That's a lot of application, so you pick how much of it exists: Editor, Developer, Reverse Engineer, or Everything. Press a shortcut belonging to a personality you're not in and it asks, tells you what it would switch you to, and does nothing at all if you decline.

One native executable, no runtime to install, starts in under a second, opens a 100k-line file about as fast as a 100-line one.

Happy to answer anything — particularly on the symbol reading, the VMT recovery, or the AI capability model, which are the parts with the most interesting corners.

https://components4developers.blog/2026/08/10/thedane-the-danish-advanced-native-editor-v2

reddit.com
u/kimmadsen — 11 days ago
▲ 0 r/delphi

MIMERCode 1.30.00

https://preview.redd.it/5spmh2rfdhfh1.png?width=500&format=png&auto=webp&s=485248e3a829bbe4c1e1dea4739b2304b9fc356b

One language. One runtime. One security model.

The July release is the largest to date, and the theme is range. The same language, with the same sandbox and the same deployment story, now covers:

A Vulkan 3D engine. PBR, shadows, SSAO, SSR, volumetric fog, water and lava, glTF and OBJ import with skinning and animation state machines, a full rigid-body solver with joints, fracture and a character controller, GPU compute, and a self-hosted GLSL to SPIR-V compiler. No third-party engine underneath.

A complete software synthesizer. 64 voices, four sound engines, modular patch graph, 16-slot mod matrix, master FX rack, and a sample-accurate drum sequencer. A playable Model D homage ships as a sample.

A GIS and spatial-analytics engine. Geometry, CRS, R-tree indexing, cost-aware routing with turn restrictions and vehicle profiles, terrain analysis on GeoTIFF, Shapefile and GeoPackage I/O, map rendering and 3D globes.

Time, properly. 21 calendar systems, astronomical holidays, RRULE recurrence, and calendar views that render in any of them.

Plus an IDE written in the language itself, with three visual designers and a real debugger; a documentation tool that reads your app and writes its manuals; reports to PDF, HTML and DOCX; mesh networking; and industrial protocols from Modbus to OPC-UA.

All of it sandboxed by default, with per-application security policies. All of it packs into a single executable.

As always 100% written from scratch in Delphi no 3rdparty code used and 100% free!

More info: https://components4developers.blog/2026/07/26/mimercode_1_30_00/

MIMERCode, by Components4Developers.

reddit.com
u/kimmadsen — 26 days ago
▲ 2 r/delphi

New Components4Developers download portal and much more!

Introducing our new download, documentation, bugreporting, forum etc. customer portal at https://portal.components4developers.com

It is 100% written in MimerCode, our new FREE programmer, security and AI friendly programming language!

We will eventually release the portal mc source code for FREE for others to use free of charge!

Further find the latest release (1.20.01) of the MimerCode console, GUI, service runners and the MimerCode compiler/transpiler and linter.

We will soon release our new Delphi linter, also purely written in MimerCode!
Its probably the most comprehensive Delphi language linter of all times, except for using the Delphi compiler itself!

There are tons of documentation for MimerCode, language specs, stdlib specs, GUI specs, security specs and plenty more.

Further there are a cool set of great historic games, along with a faithful KIM-1 emulator (fully emulating the MOS 6502 CPU), a multiplayer web based chess server (with support for playing against a built in AI - in fact 4 concurrent AI games can be ongoing at any one time in addition to the player against player games). All of it is written in pure MimerCode!

reddit.com
u/kimmadsen — 2 months ago