Version 1.6 instructions ------------------------ Command line syntax: asm6502 [options] srcfile Valid options: -- End of options (sometimes needed after -l or -o) -l [filename] Make a listing file, default is srcfile.lst -o [filename] Output object code to file, default is srcfile.hex -e Show errors to screen -w Show warnings to screen The data pseudo-ops are: DB/FCB/BYTE/DC.B - one or more bytes, including strings in quotes DW/FDB/WORD/DC.W - one or more words DS/RMB/BLKB/DC.S - skip specified number of bytes FCC - Motorola-style string constant; surround string with '/' characters EQU or '=' sets a label equal to a constant, and SET does the same thing, except you can re-define the value multiple times through the code. Labels starting with an "@" such as "@1" append the @ label to the last non-@ label encountered, and work as temporary labels. ORG starts assembling at a new address. RORG continues generating code at the current address, but changes the PC. This lets you assemble code that will be copied to and executed at a different address. Comments begin with a semicolon (";") anywhere in the line or with an asterisk ("*") at the beginning of a line. Expressions: The current PC is referred to by using "." or "*". Binary numbers are prefixed with '%', and hex numbers with '$'. Character values are surrounded with a pair of single quotes ("'x'"). Binary numbers are postfixed with 'B', octal with 'O', decimal with 'D', and hex with 'H'. Hexadecimal values don't need a leading zero. - val negative of val + val positive of val ~ val bitwise not of val < val low 8 bits of val > val high 8 bits of val x * y x multiplied by y x / y x divided by y x % y x modulo y x + y x plus y x - y x minus y x << y x shifted left by y bits x >> y x shifted right by y bits x & y bitwise x and y x | y bitwise x or y - - - Version 1.1 changes: * Fixed a bug that would prevent using any label beginning with the letter 'A' as the first parameter of an opcode. * Prevented output of unnecessary origin commands to .DAT file to avoid complaints from MAKEROM. * Fixed the "data overwritten" error in MAKEROM, which was only displaying the low byte of the offending address. * Improved MAKEROM's handling of out-of-range memory addresses. * Added a basic macro feature, controlled by the following pseudo-ops: