Debug Extension for debugging backseat (.bs) and bssembler (.bsm) applications.

Overview

Backseat Debug

Debug Extension for debugging backseat (.bs) and bssembler (.bsm) applications.

This project is still a work in progress as are the backseat language and its platforms. Debugging is only implemented for .bsm files so far.

Extension Usage Example

Features

  • Debugging bssembler (.bsm) files.
  • Stopping on breakpoints and/or on entry.
  • Stepping through application line by line.
  • Displaying register values.
  • Changing register values.
  • Displaying a call stack.

Requirements

The debugger requires a bssembler and emulator to be able to debug .bsm files. For both windows/x64 binaries are packaged with the extension.

If you want to run the debugger on other platforms you can build bssembler and emulator yourself and specify their path in the launch.json file or in your settings. Make sure to build the emulator with debugging features (e.g. cargo build --features debbuger).

Extension Settings

This extension contributes the following settings:

  • backseat-debug.bssemblerExternalPath: Specifies an external bssembler to be used. The bssembler has to support the '-m' CLI option.
  • backseat-debug.emulatorExternalPath: Specifies an external emulator to be used. The emulator has to support the debug interface over TCP.
  • backseat-debug.emulatorExternalPathNoGraphics: Specifies an external emulator without graphics to be used. The emulator has to support the debug interface over TCP.
  • backseat-debug.bssemblerDefaultCommand: Command with arguments for external bssembler that should be used if no bssemblerCommand is specified. This setting overrules backseat-debug.bssemblerExternalPath.
  • backseat-debug.emulatorDefaultCommand: Command with arguments for external emulator that should be used if no emulatorCommand is specified. This setting overrules backseat-debug.emulatorExternalPath.
  • backseat-debug.bssemblerTimeout: Time in milliseconds after which the bssembler is killed if it does not terminate.
  • backseat-debug.emulatorTimeout: Time in milliseconds after which the emulator is killed if debugger cannot be connected.

Known Issues

Release Notes

0.4.x

Added bssembler syntax highlighting provided by coder2k (mgerhold).

0.3.x

Added call stack.

Moved repository to github organisation Backseating-Committee-2k.

0.2.x

Added registers to the variable section and added setting options.

0.1.x

Basic debugging support for bssembler.

You might also like...

A professional truffle solidity template with all necessary libraries that support developer to develop, debug, test, deploy solidity smart contract

solidity-truffle-template A professional truffle solidity template with necessary libraries that support to develop, compile, test, deploy, upgrade, v

Nov 4, 2022

This project is for hacktoberfest to encourage new developer and open source developers to contribute to open source and improve skills which require debugging, write testable code, industry standards, problem solving and many more,

This project is for hacktoberfest to encourage new developer and open source developers to contribute to open source and improve skills which require debugging, write testable code, industry standards, problem solving and many more,

🚀 Blog project for hacktoberfest In this repository, you can find issues related to a blog project that is built on top of Next.js. The project is a

Oct 9, 2022

A docker container with a wide variety of tools for debugging and setting up micro-services

Frame One Software Placeholder There are numerous times during the dev ops deployments, that a placeholder container is needed. In the past, Frame One

May 29, 2022

GraphErr is an open-source error handling library for GraphQL implementations in Deno. It's a lightweight solution that provides developers with descriptive error messages, reducing ambiguity and improving debugging.

GraphErr is an open-source error handling library for GraphQL implementations in Deno. It's a lightweight solution that provides developers with descriptive error messages, reducing ambiguity and improving debugging.

GraphErr Descriptive GraphQL error handling for Deno/Oak servers. Features Provides additional context to GraphQL's native error messaging for faster

Nov 1, 2022

🛠️ A simple GUI of Ethereum tools and utilities for debugging

Ethereum DevTools GUI A simple GUI of Ethereum tools and utilities for debugging Demo https://lab.miguelmota.com/ethereum-devtools Tools ABI viewer sh

Oct 31, 2022

1kb js library contains development debugging, error monitoring and reporting, user problem localization features

1kb js library contains development debugging, error monitoring and reporting, user problem localization features

1kb js library contains development debugging, error monitoring and reporting, user problem localization features

Dec 22, 2022

MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are still part of a flow in the AWS cloud remote.

MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are still part of a flow in the AWS cloud remote.

MerLoc MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are

Dec 21, 2022

基于React开发的新一代web调试工具,支持React组件调试,类似于Chrome Devtools。A Lightweight, Easy To Extend Web Debugging Tool Build With React

基于React开发的新一代web调试工具,支持React组件调试,类似于Chrome Devtools。A Lightweight, Easy To Extend Web Debugging Tool Build With React

English | 简体中文 基于React开发的移动web调试工具 更新日志 简单易用 功能全面 易扩展 高性能 使用cdn方式,一键接入 类Chrome devtools, 内嵌React开发者工具,支持日志,网络,元素,代理,存储,性能等, 具有更好的网络捕获能力和丰富的日志展现形式 暴露内部

Dec 25, 2022

A Knative debugging tool.

A Knative debugging tool.

__ _____.__ _____/ |__/ ____\ | ______ / ___\ __\ __\| | \____ \

Oct 28, 2022
Comments
  • Syntax Highlighting für bslang

    Syntax Highlighting für bslang

    Hiermit wird Syntax Highlighting für bslang implementiert Alle Features der Sprache werden syntaktisch unterstützt Einige Features funktionieren noch nicht überall zu 100 %, einige kleine TODO's verbleiben noch

    Deswegen gerne bereits vorhandenen Code anschauen, und sehen ob Fehler gefunden werden (bis auf bereits bekannte)

    Hier einige Screenshots von der neuen Datei test.bs: (orangene todos, grüne comment sections sind nicht Teil von dem bslang syntax highlighting, sondern von anderen extensions, rainbow brackets ist in vscode eingebaut, wenn man gewisse zeichen als brackets angibt, wenn man eine grammar definiert) image image image image image image image image

    opened by Totto16 1
  • Show Register values in different encodings

    Show Register values in different encodings

    Currently the register values are shown in the variable section as positive integers. It would be cool to have them show up in HEX or in two complement encoding as well.

    feature-request 
    opened by TheJP 0
  • Call Stack: Show label names for `CallRegister` and `CallPointer` instructions

    Call Stack: Show label names for `CallRegister` and `CallPointer` instructions

    Example:

    copy some_label, R1
    call R1
    
    some_label:
        copy 42, R2
        retrun
    

    Here we want the string "some_label" to show up in the call stack instead of "Frame 1" when we reach the line containing copy 42, R2.

    feature-request 
    opened by TheJP 0
Owner
null
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
An example web extension, using MockRTC to intercept & debug your own WebRTC traffic

MockRTC WebExtension Example Part of HTTP Toolkit: powerful tools for building, testing & debugging HTTP(S), WebRTC, and more This is an example web e

HTTP Toolkit 3 Oct 14, 2022
Intuitive and dynamic Chrome Dev Tool Extension for Three.js debugging

sceneSniff An intuitive and dynamic Chrome Dev Tool Extension for Three.js debugging sceneSniff is an in browser developer tool for Three.js projects.

OSLabs Beta 59 Dec 8, 2022
Github action to collect metrics (CPU, memory, I/O, etc ...) from your workflows to help you debug and optimize your CI/CD pipeline

workflow-telemetry-action A GitHub Action to track and monitor the resource metrics of your GitHub Action workflow runs. If the run is triggered via a

Thundra 32 Dec 30, 2022
Debug express.js server code with Ray to fix problems faster

express-ray Install this package in any Express.js project to provide an exceptional debugging experience using the Ray app by Spatie. Installation In

Permafrost Software 8 Nov 3, 2022
Debug your Jest tests. Effortlessly.🛠🖼

Jest Preview Debug your Jest tests. Effortlessly. ?? ?? Try Jest Preview Online. No downloads needed! Why jest-preview When writing tests using Jest,

Hung Viet Nguyen 2.1k Jan 4, 2023
Debug Adapter Protocol for Amiga development with FS-UAE or WinUAE

UAE Debug Adapter Protocol Debug Adapter Protocol for Amiga assembly development with FS-UAE or WinUAE. Adapted from @prb28's vscode-amiga-assembly ex

Graham Bates 5 Jul 7, 2022
A GitHub Action that allows to debug GitHub workflows using VS Code.

VS Code Server Action A GitHub Action that allows to debug GitHub workflows using VS Code. Failing CI builds can be annoying especially since we don't

stateful 18 Dec 23, 2022