Jason Self c16acb5461 Add an initial README to zilasm 5 years ago
..
COPYING 3094ceda91 First commit 9 years ago
GPLv3.txt 54c0d170c6 Updating to reflect the latest work. 8 years ago
Makefile.am 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
README.md c16acb5461 Add an initial README to zilasm 5 years ago
configure.ac 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
directives.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
directives.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
header.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
header.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
labels.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
labels.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
main.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
opcodes.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
opcodes.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
parser.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
parser.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
symtable.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
symtable.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
zmem.c 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago
zmem.h 17b564b6d9 Add SPDX-License-Identifier to all files 5 years ago

README.md

zilasm is an assembler that targets the Z-Machine. It is the default assembler used by zilc.

General syntax

Files processed by zilasm consist of instructions and directives, one per line.

Comments begin with ; and continue until end of line. Comments are ignored by the assembler.

Instructions

Instruction Number Meaning


PRINTI 178 Prints a string. QUIT 186 Terminates program execution.

Directives

zilasm uses directives which are instructions to the assembler itself. To distinguish them from instructions, directives begin with a period.

Directive Meaning


.END Signifies the end of the program and terminates assembly.

      End-of-file (EOF) is also treated as the end of the program.

.FUNCT Defines a function, which is a group of instructions. A

      function name, separated from the directive by space or tab, 
      is also required. The function name may be optionally 
      followed by a comma and include comma-separated argument 
      list. A blank line, the .END directive or end-of-file (EOF) 
      all indicate the end of the function.

Licensing

This file is part of ZilUtils/ZilAsm

You can redistribute and/or modify this file under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the license, or (at your option) any later version.

This file is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this file. If not, see http://www.gnu.org/licenses/

\$-- SPDX-License-Identifier: AGPL-3.0-or-later