1. 18 Mar, 2022 8 commits
    • zyno42's avatar
      Update `tapasco-debug` to use `clap` crate instead of `structopt` · f25a61cf
      zyno42 authored
      because `structopt`'s functionality is now completely integrated in `clap`.
      f25a61cf
    • zyno42's avatar
      Update `tapasco-debug`s `Cargo.toml` · 4c55eff1
      zyno42 authored
      4c55eff1
    • zyno42's avatar
      Update Rust edition from 2018 to 2021 · 22b195c0
      zyno42 authored
      22b195c0
    • zyno42's avatar
      Add `tapasco-debug` feature to `libtapasco` to make getters pub · 0ae916e9
      zyno42 authored
      that are necessary for `tapasco-debug` but break up the usually wanted
      encapsulation of `libtapasco`, so they are guarded behind conditional
      compilation if the non-default feature is activated.
      0ae916e9
    • zyno42's avatar
      774fdf3d
    • zyno42's avatar
      Implement Monitor, Debug and Unsafe Mode · 67433889
      zyno42 authored
      As discussed in the respective PR #290
      (https://github.com/esa-tu-darmstadt/tapasco/pull/290)
      there are now three differenct access modes: Monitor, Debug, Unsafe.
      
      This commit introduces command-line subcommands to choose the mode in
      which to operate.
      In `Monitor` mode nothing can be modified only another runtime
      can be monitored.
      In `Debug` Mode the argument registers can also be set interactively.
      In `Unsafe` Mode the only difference to `Debug` Mode is that the driver
      is released, so another host application can run in parallel.
      67433889
    • zyno42's avatar
      Add `env_logger` crate for logging · 3e457442
      zyno42 authored
      3e457442
    • zyno42's avatar
      Add first mockup of `tapasco-debug` in Rust · f3a9bef0
      zyno42 authored
      This is the first commit for a work-in-progress effort on Issue #264.
      
      Since `tapasco-debug` was removed in the v2020.10 release because the
      ncurses-based UI was "quite flaky" you had to use two different Tapasco
      workspaces to have the debugger still around while using the recent
      Tapasco version.
      This reimplementation of `tapasco-debug` is written in Rust and
      uses the `libtui-rs` and `crossterm` crates for the terminal user
      interface along with the new Tapasco runtime.
      
      For the moment it provides a list of PEs which can be selected to see
      the first 16 argument registers along with some generic bitstream and
      platform information.
      Writing to argument registers, starting PEs, dumping Local Memory is not
      possible yet.
      
      To integrate it into the build process of this repository it uses the
      same mechanism to build using Cargo from CMake as PR #285.
      f3a9bef0