adfba876d2
- setup new UI layout using tiling and an action/message based system for updating global state based on interactions with individual tiles and vice versa - added custom dialogs and UI helpers to create a more cohesive UI - added a disassembler widget (WIP) - added a documentation widget (WIP) - refactored backend halt/pause logic to fix bugs. - started emulator implementation documentation (to complement the ISA spec)
The DSA libraries form the foundation of the entire project, acting as a bridge between high‑level software and the specialized DSA hardware. Their primary responsibilities are:
-
Instruction Set Core Library
- Encapsulates all architectural primitives: opcodes, operand formats, and execution semantics.
- Supplies utility functions to build, validate, and serialize instruction streams.
-
Assembler Support
- Translates DSA assembly language into binary instruction packets that the hardware can execute.
- Implements directives for sectioning, alignment, and relocation handling.
-
High‑Level Language Compiler (DSC) Runtime
- Generates DSA bytecode from DSC source files, leveraging the core library for instruction encoding.
- Offers debugging hooks, profiling counters, and exception handling mechanisms.
-
Testing & Verification Utilities
- Contains unit tests that run against both emulated and real hardware to ensure correctness.
- Provides logging facilities for low‑level bus transactions and performance metrics.