Version 0.11.0
This release of Reko has breaking changes in interfaces and classes, and completes the move to .NET 5.0. Many classes were also moved to different namespaces: you'll need to recompile your project. The file loading code was refactored heavily to be easier to use and to support the reading of files stored in (potentially deeply nested) archives. Many fixes were made in the AArch64 rewriter (with gentle prodding from @rfalke).
Some other new features are:
- Wasm files can be loaded and disassembled. A rewriter will materialize in a later release.
- Reko Gui is asynchronous. This will help the ongoing port to Avalonia.
- Stack variable references that escape to other procedures are now tracked (courtesy of @ptomin).
- The new ByteTrie class can be used for pattern matching.
- Added support for PDP-10 architecture. The PDP-10 is word-addressable, has 36-bit words, 18-bit addresses, and variable sized bytes, all of which contrast vividly with present day 8-bit-based architectures.
- The MemoryControl displays sizes other than bytes. This accommodates PDP-10, Microchip PIC, and Mil-Std-1750A.
- Intrinsic procedures can now have generic parameter and return types.
- Added initial support for COFF files.
- Adapted OllyLangInterpreter to other architectures than X86.
- Added m6502 emulator, c64 emulator.
- Various CI improvements and fixes. Also, Reko now builds on ARM64! (courtesy of @smx-smx)
- Added support for constants larger than 64 bits.
- Support for reading TAR and AR archives.
- Support loading files from arbitrarily nested archives.
- Rewrote the loader so it is much easier to use (and understand).
- Extended C parser to handle more GCC attributes.
- Support for Sanyo LC8670.
Thanks to @nemerle, @ptomin, @shandianchengzi, @slartibardfast, and @smx-smx for their time and contributions to the Reko project!