# dman95/sasm

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/dman95-sasm).**

5,963 stars · 219 forks · Python · NOASSERTION

## Links

- GitHub: https://github.com/Dman95/SASM
- Homepage: http://dman95.github.io/SASM/
- awesome-repositories: https://awesome-repositories.com/repository/dman95-sasm.md

## Topics

`assembler` `assembly` `assembly-language` `fasm` `gas` `ide` `nasm` `sasm`

## Description

SASM is a cross-platform integrated development environment for writing, assembling, and debugging low-level assembly code. It serves as a unified editor and execution flow for assembly language development across different operating systems.

The environment supports multiple assembly languages and their respective toolchains, including NASM, MASM, GAS, and FASM, within a single interface. It features a binary-level debugger that allows for stepping through instructions and inspecting CPU registers and variable states.

The project provides a toolchain-based build pipeline and a configuration system for selecting assembler and linker versions. It also includes a workspace manager with tab-based document management and session persistence to restore open files upon restart. To ensure consistent behavior across platforms, the software employs a unified wrapper for standardizing keyboard input and screen output.

## Tags

### Operating Systems & Systems Programming

- [Cross-Platform Assembly Development](https://awesome-repositories.com/f/operating-systems-systems-programming/cross-platform-assembly-development.md) — Offers a unified editor and execution flow for writing, assembling, and running low-level code across different platforms. ([source](http://dman95.github.io/SASM/))
- [Assembly Language Development](https://awesome-repositories.com/f/operating-systems-systems-programming/assembly-language-development.md) — Enables writing and executing low-level code for NASM, MASM, GAS, and FASM within a single environment.
- [Build Pipelines](https://awesome-repositories.com/f/operating-systems-systems-programming/binary-analysis-capabilities/binary-assembly/build-pipelines.md) — Orchestrates the sequence of assembling and linking source code using external binaries and configurations.
- [CPU Register Inspection](https://awesome-repositories.com/f/operating-systems-systems-programming/cpu-register-inspection.md) — Allows for inspecting CPU register values and variable states while stepping through assembly instructions. ([source](http://dman95.github.io/SASM/))
- [Instruction-Level Debugging](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-configuration/instruction-level-debugging.md) — Implements instruction-level debugging to inspect registers and memory for resolving binary logic errors.

### Part of an Awesome List

- [Assemblers](https://awesome-repositories.com/f/awesome-lists/devtools/assemblers.md) — Integrates toolchains for multiple assemblers including NASM, MASM, GAS, and FASM within a single interface.

### Development Tools & Productivity

- [Assembly Language IDEs](https://awesome-repositories.com/f/development-tools-productivity/assembly-language-ides.md) — Serves as a cross-platform integrated development environment for writing, assembling, and debugging low-level assembly code.
- [Toolchain Configurations](https://awesome-repositories.com/f/development-tools-productivity/build-and-test-scripts/toolchain-configurations.md) — Provides a configuration system for selecting assembler and linker versions and processor architecture build options. ([source](http://dman95.github.io/SASM/))
- [Debugger Integrations](https://awesome-repositories.com/f/development-tools-productivity/debugger-integrations.md) — Integrates external debugger processes to monitor CPU registers and memory states during program execution.
- [Workspace Session Managers](https://awesome-repositories.com/f/development-tools-productivity/workspace-session-managers.md) — Includes a workspace manager to handle open files in tabs and restore previous sessions upon restart. ([source](http://dman95.github.io/SASM/))
- [Workspace State Persistence](https://awesome-repositories.com/f/development-tools-productivity/workspace-state-persistence.md) — Saves and restores the state of open files and editor tabs using local configuration files.

### Programming Languages & Runtimes

- [Multi-Assembler Toolchain Support](https://awesome-repositories.com/f/programming-languages-runtimes/multi-assembler-toolchain-support.md) — Supports multiple assembly languages and their toolchains, including NASM, MASM, GAS, and FASM, in a single interface.

### System Administration & Monitoring

- [Assembly Debuggers](https://awesome-repositories.com/f/system-administration-monitoring/assembly-debuggers.md) — Ships a binary-level debugger for inspecting registers and variable states while stepping through instructions.
