4 Commits
Author SHA1 Message Date
Shawn Quick a20c6edc89 Name the assembler QuickAsm (qasm).
The executable, library, C++ namespace, headers, and tests are qasm.
Merlin 16+ and Merlin 32 stay dialect names, including --syntax merlin
and merlin32. The README is the QuickAsm front page: build, usage, the
five matching coverage objects, and where the dialect docs live.
2026-10-15 16:51:41 -07:00
Shawn Quick 28805f9490 Assemble several 65816 dialects through one pcode stream.
Identify Merlin, Merlin 32, ORCA/M, LISA, or ca65, lower the source to
a common pcode, and run that through the existing two-pass encoder.
Merlin expressions stay left to right. ca65 and ORCA/M expressions are
rewritten into fully parenthesized Merlin form. The object stays
absolute BIN.

= and # compare in expressions. REL still assembles, with unknown
labels treated as zero. --syntax selects a dialect and --dump-pcode
writes the lowered stream. doc/SYNTAX.md records the pseudo-op mapping
and the limits.
2026-10-12 20:03:37 -07:00
Shawn Quick ef62d29f94 started fixing opcode issues 2026-08-31 11:20:44 -07:00
Shawn Quick 6a163bdb9c Initial Merlin 16+ compatible cross-assembler.
Host-side 6502/65C02/65816 assembler using Merlin 16+ as the primary
dialect, with Merlin 8/16 compatibility and native high-ASCII source
support ($A0 column tabs, $8D line endings).
2026-08-31 08:31:18 -07:00