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 \$-- SPDX-License-Identifier: AGPL-3.0-or-later