semblers are started with the appropriate option(s) and file(s)
to assemble following the assembler name:
- as6809 [-dqxgalosff] file1 [file2 file3 ... file6]
+ as-z80 [-dqxjgaloscpff] file1 [file2 file3 ... file6]
The options are:
The listing radix affects the
.lst, .rel, and .sym files.
+ j add line number and debug information to file
g undefined symbols made global
a all user symbols made global
o create object output file1.rel
s create symbol output file1.sym
- p disable listing pagination
- w wide listing format for symbol table
+ c generate sdcdb debug information
- z enable case sensitivity for symbols
+ p disable listing pagination
relocatable reference flagging:
f by ` in the listing file
ff by mode in the listing file
+ asx8051 specific command line option:
+ -I<dir> Add the named directory to the include file
+ search path. This option may be used more than once.
+ Directories are searched in the order given.
+
The file name for the .lst, .rel, and .sym files is the first
file name specified in the command line. All output files are
ascii text files which may be edited, copied, etc. The output
will use the proper conversion for this file. Linked files may
have different radices.
+ ASXXXX assembles supported by and distributed with SDCC are:
+ asx8051 (Intel 8051)
+ as-z80 (Zilog Z80 / Hitachi HD64180)
+ as-gbz80 (GameBoy Z80-like CPU)
+ as-hc08 (Motorola 68HC08)
\f
THE ASSEMBLER PAGE 1-28
1. -i/-s Intel Hex (file.ihx) or Motorola S19 (file.s19)
image output file.
- 2. -z Specifies that symbol names are case sensitive.
-
- 3. -m Generate a map file (file.map). This file con-
+ 2. -m Generate a map file (file.map). This file con-
tains a list of the symbols (by area) with absolute ad-
dresses, sizes of linked areas, and other linking
information.
- 4. -w Specifies that a wide listing format be used
- for the map file.
-
- 5. -xdq Specifies the number radix for the map file
+ 3. -xdq Specifies the number radix for the map file
(Hexidecimal, Decimal, or Octal).
- 6. -u Generate an updated listing file (file.rst)
+ 4. -u Generate an updated listing file (file.rst)
derived from the relocated addresses and data from the
linker
- 7. fileN Files to be linked. Files may be on the same
+ 5. fileN Files to be linked. Files may be on the same
line as the above options or on a separate line(s) one
file per line or multiple files separated by spaces or
tabs.
-\f
-
- THE LINKER PAGE 2-3
- INVOKING ASLINK
-
-
- 8. -b area = expression (one definition per line)
+ 6. -b area = expression (one definition per line)
This specifies an area base address where the expres-
sion may contain constants and/or defined symbols from
the linked files.
- 9. -g symbol = expression (one definition per line)
+ 7. -g symbol = expression (one definition per line)
This specifies the value for the symbol where the ex-
pression may contain constants and/or defined symbols
from the linked files.
- 10. -k library directory path
+ 8. -k library directory path
(one definition per line) This specifies one possible
+
+\f
+
+ THE LINKER PAGE 2-3
+ INVOKING ASLINK
+
+
path to an object library. More than one path is al-
lowed.
- 11. -l library file specification
+ 9. -l library file specification
(one definition per line) This specifies a possible
library file. More than one file is allowed.
- 12. -e or null line, terminates input to the linker.
+ 10. -e or null line, terminates input to the linker.
+
+ ASLINK linkers supported by and distributed with SDCC are:
+ aslink (Intel 8051)
+ link-z90 (Zilog Z80 / Hitachi HD64180)
+ link-gbz80 (GameBoy Z80-like CPU)
+ link-hc08 (Motorola 68HC08)
+
+ aslink (Intel 8051) specific options:
+
+ Output:
+ -j Produce NoICE debug as file[NOI]
+ -z Produce SDCdb debug as file[cdb]
+ -u Update listing file(s) with link data as file(s)[.RST]
+ Miscellaneous:
+ -a [iram-size] Check for internal RAM overflow
+ -v [xram-size] Check for external RAM overflow
+ -w [code-size] Check for code overflow
+ -y Generate memory usage summary file[mem]
+ -Y Pack internal ram
+ -A [stack-size] Allocate space for stack
+
+
+ link-z80 (Zilog Z80 / Hitachi HD64180) specific options:
+
+ Map format:
+ -j no$gmb symbol file generated as file[SYM]
+ Output:
+ -z Produce SDCdb debug as file[cdb]
+ -Z Gameboy image as file[GB]
+ List:
+ -u Update listing file(s) with link data as file(s)[.RST]
+
+
+ link-gbz80 (GameBoy Z80-like CPU) specific options:
+
+ Relocation:
+ -yo Number of rom banks (default: 2)
+ -ya Number of ram banks (default: 0)
+ -yt MBC type (default: no MBC)
+ -yn Name of program (default: name of output file)
+ -yp# Patch one byte in the output GB file (# is: addr=byte)
+ Map format:
+ -j no$gmb symbol file generated as file[SYM]
+ Output:
+ -Z Gameboy image as file[GB]
+ List:
+ -u Update listing file(s) with link data as file(s)[.RST]
+
+
+ link-hc08 (Motorola 68HC08) specific options:
+ Output:
+ -t ELF executable as file[elf]
+ -j Produce NoICE debug as file[NOI]
+ -z Produce SDCdb debug as file[cdb]
+ -u Update listing file(s) with link data as file(s)[.RST]
+ Miscellaneous:
+ -a [iram-size] Check for internal RAM overflow
+ -v [xram-size] Check for external RAM overflow
+ -w [code-size] Check for code overflow