A toy MSP430 assembler using recursive descent parsing for fast and efficient operation
Go to file
2023-08-25 03:05:42 -05:00
src docs: Improve documentation comments somewhat 2023-08-25 03:05:42 -05:00
.gitignore Update gitignore 2023-08-19 23:55:41 -05:00
.rustfmt.toml msp430-asm: init repo with proof-of-concept code 2023-08-19 23:02:24 -05:00
Cargo.toml msp430-asm: init repo with proof-of-concept code 2023-08-19 23:02:24 -05:00
readme.md Add readme.md 2023-08-20 00:53:35 -05:00
valid.asm lexer: Overhaul to support token substitution 2023-08-25 03:01:53 -05:00

msp430-asm

A toy assembler for the TI MSP430, built with MicroCorruption in mind.

Usage

msp430-asm [-|-f|--file]

The frontend isn't very smart. It does no fancy arg parsing, no key interpretation or cursor manipulation or TUI goodness that everyone knows and loves. It does four things: Read. Evaluate. Print. Loop. Basic REPL. It doesn't even check whether you're running interactively or not.

By default, the assembler operates in repl mode, and each line is treated in isolation. This is great for quickly looking up an instruction.

To parse an entire file at once, and get useful context when there's a parse error, pipe it in through stdin with - as such:

cat valid.asm | msp430-asm -f

You can press Ctrl+D on Linux to emit an EOF over the terminal.

Motivations

  • Microcorruption's assembler sucks
  • I got tired of stringly-typed Python
  • I wanted to write a parser
  • I wanted to write Rust
  • I'm a fan of interactive programs