README.md 2.0 KB

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