It is a convenience directive for defining least significant byte first two byte words, as the Z80 uses them. Multiple expressions, separated by commas, may be. ZASM is a compiler/assembler and monitor (including disassembler and debugger) for the Z80 CPU. It runs under Linux (probably also. Uses. The easiest way to put data directly into your program. Note that since the z80 processor is little-endian, loading into a bit register from.

Author: Mikalrajas Shataur
Country: Montenegro
Language: English (Spanish)
Genre: Health and Food
Published (Last): 11 October 2004
Pages: 471
PDF File Size: 3.38 Mb
ePub File Size: 12.7 Mb
ISBN: 823-7-68823-997-8
Downloads: 19530
Price: Free* [*Free Regsitration Required]
Uploader: Dokora

It will seek in the output file and start overwriting previous output.

It allows definition of one or more literal bytes, as well as strings of bytes. People have requested to be able to overwrite the generated output.

This sets the assembler’s idea of the current address. As in C but without thethis includes an other source file.

Assembler directives

Multiple expressions, separated by commas, may be specified. With these directives it is possible to define new commands, which will output defined code.

Org only changes the assembler’s idea of “where” it is. Everything after this directive is ignored. The previously defined pages are not overwritten. There is no need to do this.


Strings of bytes should be between double quotes. Parts of the code can be omitted using assebleur conditional statements. Using this directive more than once can assembluer useful to create code which is to be executed at the same address, for example when the memory is mapped. This is mostly useful in combination with incbin.

The official ZASM homepage

After this definition, it is possible to use the macro, like this: At the start, the current address is set to 0. Almost any name is possible without escape characters, because of the quote rules.

Note that no code is generated by this directive, so if padding bytes are required, they must be inserted using defs. This can be used to put some comments at the end. The argument is given in the same way as for include.

Code which is not assembled is checked for a correct aesembleur. All definitions should be separated by commas. Normally, the first directive in a program is org, to set the starting address. Otherwise it is not touched, which means that if you use these directives, a successfull assembler execution does not imply that all the code is correct.

This is what seek is for. If the argument of seek is greater than the current output size, the file is extended with zeros. At the end of the program, it is allowed to use the “end” directive.


At the start of each page, the code can set the starting address to the mapping address. If val is omitted, it defaults to 0. The filename is then read, until the ending quote, which is the same as the starting quote.

It takes one or two arguments, num and val. Awsembleur reserves num bytes of space and initializes them to val.

assembleur z80 pour cpc &copy _prototype_ (19??)

It allows the included binary to be “patched”. It allows any binary data to be included verbatim into the output. Incbin stands for “include binary”. The first non-whitespace character after the include directive is considered the starting quote. It takes one argument, which must evaluate to a value in the first pass it z08 not use labels which are defined later.

In the following example, the output contains 4 bytes: It is a convenience directive for defining least significant byte first two byte words, as the Z80 uses them.