Using it
Dialects
--dialect selects the source syntax, not the CPU. Each front-end matches
an existing assembler, so pick the assembler the source was written for, not the
machine it runs on.
Where a dialect serves more than one CPU, --cpu picks the target — see
Targets.
| Dialect | Syntax of | Also accepted |
|---|---|---|
acme |
C64 6502, ACME syntax | 6502, mos6502 |
ca65 |
NES 6502, ca65 syntax (assemble + link) | nes |
65816 |
65816, ca65 syntax | 816, ca65-816 |
huc6280 |
PC Engine HuC6280, ca65 syntax | pce, pc-engine |
vasm |
Amiga 68000, vasm Motorola syntax | 68000, m68k, mot |
lwasm |
6809, lwasm syntax | 6809 |
rgbasm |
Game Boy SM83, RGBDS syntax | sm83, gb, gameboy, game-boy |
pasmo |
Z80, pasmo syntax | |
pasmonext |
Z80, pasmo syntax, Spectrum Next target by default | |
sjasmplus |
Z80, sjasmplus syntax | sjasm |
8080 |
Intel 8080, Intel syntax | i8080, intel8080 |
6800 |
Motorola 6800, Motorola syntax | m6800 |
1802 |
RCA COSMAC CDP1802 | cdp1802, cosmac |
8048 |
MCS-48 with on-chip ROM | i8048, mcs48, mcs-48, 8049, 8050, 80c48, 80c49 |
8035 |
MCS-48, ROM-less parts — the four BUS instructions are refused | 8039, 8040, 80c35, 80c39, 80c40 |
scmp |
National SC/MP (INS8060) | sc/mp, ins8060 |
f8 |
Fairchild F8 (3850), Channel F | 3850, f3850, channelf, channel-f |
2650 |
Signetics 2650 | s2650, signetics2650 |
tms7000 |
TI TMS7000 | 7000, tms70c00 |
pdp11 |
DEC PDP-11 | pdp-11, lsi11, lsi-11 |
tms9900 |
TI TMS9900 (TI-99/4A) | 9900, ti99 |
cp1610 |
GI CP1610 (Intellivision) | cp1600, cp-1600, intellivision, intv |
z8000 |
Zilog Z8000, non-segmented | z8002 |
z8001 |
Zilog Z8001, segmented |
This table comes from the same list --dialect resolves against, so it always
matches what the assembler accepts.
Picking one
The dialect names the assembler, which the source itself usually shows:
!macro and !byte are ACME, .macro and .segment are ca65, a \1 inside a
macro body is lwasm or vasm.
Where a machine has a conventional choice:
| Machine | Usual dialect |
|---|---|
| C64 | acme |
| NES | ca65 |
| ZX Spectrum | pasmo, or sjasmplus for the wider directive surface |
| ZX Spectrum Next | pasmonext |
| Amiga | vasm |
| Game Boy | rgbasm |
| PC Engine | huc6280 |
| Dragon / CoCo | lwasm |
That is convention, not a constraint: any dialect assembles any source it can
parse, and the CPU follows the dialect unless --cpu says otherwise.