Repository navigation
Rewind64 v0.2.6 (Linux x86-64 experimental)
Pre-releaseRewind64 v0.2.6 — experimental Linux x86-64 pre-release
Explore execution. Trace every instruction. Understand the past.
This version expands Rewind64's native Assembly interactive debugger with bounded forward instruction batches. It still supports one explicitly launched Linux x86-64 target. It is not a reverse debugger, record/replay system or process attachment tool.
New: step N and s N
At a stopped interactive prompt:
rewind64> step 4
After step: ...
Register changes: ...
...
rewind64> status
Session status: pid=... steps=4 pending_signal=0
rewind64> s 16
...```
- Specify a strict decimal integer from **1–16**. The original `step` and `s` commands still request **one** instruction.
- Each successfully completed instruction receives a fresh CPU register snapshot and register-change report; `--changes-only` keeps its concise display behavior.
- Invalid counts (`0`, `17`, leading zeros, signs, extra arguments or trailing spaces) print a usage hint **without resuming the target**.
- A verified application signal stop **stops the batch immediately**, preserves the pending signal for explicit operator action, and cancels remaining steps.
- Ptrace exec/exit events also cancel a batch, with existing lifecycle handling continuing as before.
## Validation
**131 native Assembly fixture/Bash integration tests** passed on Ubuntu 22.04 and Ubuntu 24.04. The new 14 cases verify minimum and maximum counts, aliases, sequential batch operations, malformed input, SIGILL/SIGSEGV/SIGTRAP interruption, signal forwarding, early exit, concise output, memory/code inspection coexistence and EOF without newline. Build and tests require NASM, Linux x86-64/glibc, Make, Bash and coreutils; **Python is not used**.
## Usage
```sh
./rewind64 run --interactive /path/to/your/authorized/program
./rewind64 run --interactive --changes-only /path/to/your/authorized/program
Other interactive commands remain available: regs/r, status/i, code/x, stack/k, mem 0xHEX [1..4]/m, continue/c, help, quit/q.
Limitations and security
This is experimental single-tracee Linux x86-64 software with forward execution only, not a sandbox. Only run or inspect binaries you own or are authorized to debug. Trace memory/register output can include sensitive information. Linux ptrace permissions and host security policies still apply; Rewind64 does not bypass them.
No Windows/macOS native backends, thread/fork following, arbitrary process attachment, breakpoints, source-level decoding, trace recording, historical state navigation, reverse execution or deterministic replay are implemented.
License: Boost Software License 1.0. Source: https://github.com/sanskarIN/Rewind64