1
0
mirror of https://github.com/ksherlock/x65.git synced 2024-11-01 03:05:55 +00:00
x65/docs/readme.md

65 lines
2.1 KiB
Markdown
Raw Normal View History

# x65 Assembler
x65 is an open source 6502 series assembler that supports object files,
linking, fixed address assembling and a relocatable executable.
Assemblers have existed for a long time and what they do is well documented,
x65 tries to accomodate most expectations of syntax from Kick Assembler (a
Java 6502 assembler) to Merlin (an Apple II assembler).
For debugging, dump_x65 is a tool that will show all content of x65 object
files, and x65dsasm is a disassembler intended to review the assembled
result.
## Noteworthy features:
* Code with sections, object files and linking or single file fixed
address, or mix it up with fixed address sections in object files.
* Assembler listing with cycle counting for code review.
* Export multiple binaries with a single link operation.
* C style scoping within '{' and '}' with local and pool labels
respecting scopes.
* Conditional assembly with if/ifdef/else etc.
* Assembler directives representing a variety of features.
* Local labels can be defined in a number of ways, such as leading
period (.label) or leading at-sign (@label) or terminating
dollar sign (label$).
* String Symbols system allows building user expressions and macros
during assembly.
* Reassignment of symbols and labels by default.
* No indentation required for instructions, meaning that labels can't
be mnemonics, macros or directives.
* Supporting the syntax of other 6502 assemblers (Merlin syntax
requires command line argument, -endm adds support for sources
using macro/endmacro and repeat/endrepeat combos rather
than scoeps).
* Apple II GS executable output.
## Command Line Options
2020-01-11 21:16:34 +00:00
Controls the assembler for the entire file
2020-01-11 21:04:00 +00:00
See [Command Line Options](command_line_options.md)
## Directives
2020-01-11 21:16:34 +00:00
Controls the assembler on a line basis
2020-01-11 21:04:00 +00:00
See [Directives](directives.md)
2020-01-11 21:16:34 +00:00
## Eval Functions
Functions that returns values for use in expressions.
See [Eval Functions](eval_functions.md)
## Macro examples
2020-01-11 21:16:34 +00:00
Some info about the included example x65macro.i file.
See [Macro Samples](macro_samples.md)
## List of Errors
See [Error List](errors.md)