1
0
mirror of https://github.com/ksherlock/x65.git synced 2024-12-29 10:30:32 +00:00
Commit Graph

45 Commits

Author SHA1 Message Date
Carl-Henrik Skårstedt
72b9842354 Leftover fixes
- added -acc=16 and -xy=16 command line options for 65816 immediate mode
instruction size
- added conditional expressions (evaluates to 0 for false and 1 for
true)
- fixed macro substitution to be whole word only
2015-10-25 23:48:35 -07:00
Carl-Henrik Skårstedt
c2c6aaef0f Import directive
- IMPORT directive added, works like Kick Assembler
- -endm option also applies to REPT
- REPEAT directive is an alias of REPT
- Merlin macro fix uses ]1, ]2, .. as macro params
- Erroneously flushed local labels when starting to assemble a macro
2015-10-25 14:29:41 -07:00
Carl-Henrik Skårstedt
98886793df 6502 illegal opcodes (-cpu=6502ill)
- Added illegal instructions since it only needed updating of tables.
2015-10-24 15:02:16 -07:00
Carl-Henrik Skårstedt
c11b09c123 Update README.md 2015-10-24 14:08:16 -07:00
Carl-Henrik Skårstedt
d3c6c31fae More updating of language relating to linking 2015-10-24 13:55:42 -07:00
Carl-Henrik Skårstedt
2b148b5e72 Updating language relating to linking 2015-10-24 13:48:03 -07:00
Carl-Henrik Skårstedt
d279d35f7e Alias opcodes
- Added aliases to opcodes
- Fixed XCode warnings
- Revisited outdated comments
- Fixed CPU / PROCESSOR keyword giving an error even if the argument was
valid
- Rearranged switch statements to be in a more logical order
2015-10-24 13:41:11 -07:00
Carl-Henrik Skårstedt
2c07d9285f Revision increment 2015-10-23 23:32:43 -07:00
Carl-Henrik Skårstedt
46cb57f231 65816 documentation
- Starting to scratch the surface of 65816 documentation
2015-10-23 23:31:35 -07:00
Carl-Henrik Skårstedt
fa0c6b0187 65816 Added
- Addressing modes
- Opcodes
- Directives
- Cleanup
2015-10-23 22:44:56 -07:00
Carl-Henrik Skårstedt
cc99faed16 65C02 CPU added
- Added SAV as a Merlin directive
- cpu command line option to switch CPU target
2015-10-21 22:34:01 -07:00
Carl-Henrik Skårstedt
fbade4eb06 Fix negative numbers, Merlin MAC and LUP, endmacro switch
- Could not declare negative numbers
- Support for LUP (Merlin rept) and MAC (Merlin macro)
- Support for endmacro instead of scoped macros
2015-10-20 22:28:53 -07:00
Carl-Henrik Skårstedt
521e3b98a8 Merlin syntax support, symbol file fix, list file fix
- don't allow ! in merlin labels
- don't skip initial : in merlin labels
- symbol files resolves labels from incobj relative sections
- assembler listing skipping disassembly for lines that was not built
from source code
2015-10-19 22:44:02 -07:00
Carl-Henrik Skårstedt
d6bc17414a Added updates to readme.md 2015-10-18 19:51:38 -07:00
Carl-Henrik Skårstedt
38e0abcc6e Export now writes all sections instead of just the last fixed one
- Combines all fixed sections into a single binary
- Export directive allows for writing multiple binaries from one source
file
2015-10-18 19:48:03 -07:00
Carl-Henrik Skårstedt
4ce149af26 Adding a note about linking 2015-10-18 12:50:51 -07:00
Carl-Henrik Skårstedt
b7d0b195af List file option added
- using -lst the disassembled and assembled source is written out side
by side
- option -opcodes saves out a source file with all opcodes & addressing
modes for testing
- cleaned up opcode table to be simpler and more robust so I can
consider supporting other cpus
- bug fixes
2015-10-18 12:42:10 -07:00
Carl-Henrik Skårstedt
c8ceffdbf6 Compile issues fixed for xcode
- Additional stability checks
2015-10-17 12:13:23 -07:00
Carl-Henrik Skårstedt
071d64de80 Object file now protects local labels
- XDEF declares labels as global
- Each incobj file keeps its own protected set of labels for link-time
evalulations
2015-10-16 20:27:56 -07:00
Carl-Henrik Skårstedt
12cfe830f9 Fixes
- Sections got overwritten (reference vs pointer mistake)
- Check that relocs and late evals apply the adjustments within the
existing binary
2015-10-15 20:58:17 -07:00
Carl-Henrik Skårstedt
ca604ad81c Export and import of object files
First pass implementation of object files - all imported labels are
currently global.
2015-10-13 19:38:13 -07:00
Carl-Henrik Skårstedt
6962a98419 Renaming asm6502 to x65 2015-10-13 19:25:24 -07:00
Carl-Henrik Skårstedt
3534ee4faa Error Fix IV
- Extraneous conditional expression borked late evaluation of branch
address
2015-10-12 20:51:12 -07:00
Carl-Henrik Skårstedt
d17fbfb710 Error Fix III, Switching default section to be relative section
- Merlin support broke colon-overrides-directive-as-label trick, fixed.
- Relative section fixes
- If no section is specified the default section will be relative. If a
binary output is requested the default section is applied to address
$1000
2015-10-12 00:05:06 -07:00
Carl-Henrik Skårstedt
83ffae8812 Some more notes on Merlin syntax support 2015-10-11 15:10:58 -07:00
Carl-Henrik Skårstedt
a946243bab Error fix II, debug symbol table rewrite
- Merlin syntax also broke non-merlin local labels starting with a
period
- Symbols in relative sections wouldn't work in the text based map
system so the symbols are now a map instead.
2015-10-11 14:55:55 -07:00
Carl-Henrik Skårstedt
db6f6887e5 Error fixes
-Declaring an enum is apparently not proper c++, Visual Studio did not
complain.. Moved the whole EvalOperator enum up to the top of the file
-If a line can't be processed, error out instead of infinite looping
(freeze)
-Kick Assembler syntax for using a macro was broken with recent changes
to support Merlin syntax, colon prefix for using macros is now only
allowed if not specifying -merlin.
2015-10-11 12:04:49 -07:00
Carl-Henrik Skårstedt
feb79990ee Export section selection, bug fixes
Picking the most viable section for export for now
cleaning up some Merlin syntax issues
showable version of section and link directives
2015-10-10 20:08:30 -07:00
Carl-Henrik Skårstedt
8f5785702d Bug fixes for link directive
Making sure that relative addresses work in bytes/words/dc.b/dc.w etc.
A few fixes to absolute addresses
Figured out how to safely reloc separate hi byte / lo byte references
Fixed a few instances of reversed byte order
2015-10-10 17:53:15 -07:00
Carl-Henrik Skårstedt
1a192d308a First pass sections
Supports same file relative sections (no object files yet)
Supports relative addresses
Supports absolute addresses
Thinking about high byte / low byte references to absolute addresses
2015-10-10 15:25:08 -07:00
Carl-Henrik Skårstedt
dfc0c46160 Apple II Binary and Merlin Assembler compatibility improved
Not fully tested yet
2015-10-07 22:27:03 -07:00
Carl-Henrik Skårstedt
ad62e04afb Adding ENUM and assembler directives from LISA and MERLIN assemblers. 2015-10-06 22:42:22 -07:00
Carl-Henrik Skårstedt
a4598a5c43 INCDIR, -D, -i, sublime
More stuff for 6502 fun time
2015-10-05 22:45:42 -07:00
Carl-Henrik Skårstedt
00b149a23d Added REPT directive 2015-10-04 16:06:45 -07:00
Carl-Henrik Skårstedt
9af85f3a8a Adding dc.b/dc.w directive documentation 2015-10-04 15:00:54 -07:00
Carl-Henrik Skårstedt
f9ac2253a9 Added 'STRUCT' directive, fixed bugs, rearranged functions 2015-10-04 14:05:38 -07:00
Carl-Henrik Skårstedt
30df9409f1 Fixed error obscured by cleanup code 2015-10-02 21:52:55 -07:00
Carl-Henrik Skårstedt
a6fc6a1ddc Merge remote-tracking branch 'origin/master'
Conflicts:
	README.md
2015-10-02 20:59:20 -07:00
Carl-Henrik Skårstedt
25396a9983 Cleanup
- Wrapped the conditional assembly logic into functions to make it is a
bit more readable.
- Moved related code closer
2015-10-02 20:57:50 -07:00
Carl-Henrik Skårstedt
34970af7fb Adding a note about conditional assembly 2015-10-01 23:36:09 -07:00
Carl-Henrik Skårstedt
d5edf1d593 Label Pools and Conditional Assembly
Awesome stuff added.
2015-10-01 23:16:49 -07:00
Carl-Henrik Skårstedt
80c3016857 Update README.md 2015-09-30 00:01:28 -07:00
Carl-Henrik Skårstedt
433d765403 Fixing a typo 2015-09-30 00:00:33 -07:00
Carl-Henrik Skårstedt
5d9572f0ee Adding the file to github project 2015-09-29 22:07:04 -07:00
Carl-Henrik Skårstedt
81636bbb26 Initial commit 2015-09-29 21:58:50 -07:00