Commit Graph

38 Commits

Author SHA1 Message Date
Kelvin Sherlock
3b95cbb475 improved sorting for symbol table printing.
numerical order now prints absolute values first and factors in the segment number (starting at 1) when sorting others.
2019-12-21 17:35:01 -05:00
Kelvin Sherlock
5e6829e9ae fix import segment number 2019-12-21 17:32:06 -05:00
Kelvin Sherlock
c85d401fbf add support for $4F relocation record, which is a 1-byte, internal relocation with 8-bit shift. Found via linking marinetti. 2019-12-21 15:07:03 -05:00
Kelvin Sherlock
67f34936c2 check for code segments that exceed the bank size. 2019-12-17 12:43:37 -05:00
Kelvin Sherlock
5269b58365 default merlin kind is 4096 (static code, no special memory) 2019-12-17 12:43:05 -05:00
Kelvin Sherlock
7b059c424b * is only a comment character if first character. 2019-12-16 23:12:53 -05:00
Kelvin Sherlock
4688dbc5c3 half of lib support (untested). library names need to match the symbol (singular) they define. 2019-12-15 13:06:49 -05:00
Kelvin Sherlock
dac2be0940 misc cleanup 2019-12-15 13:06:05 -05:00
Kelvin Sherlock
57525d5464 EXT support. 8/16+ added EXT as an operand to import an absolute linker value into the local symbol table. 2019-12-15 13:05:41 -05:00
Kelvin Sherlock
637df6ee33 ORG and LKV 1 support (untested) 2019-12-15 13:04:45 -05:00
Kelvin Sherlock
34523bbecf ALI and DS support 2019-12-15 13:03:43 -05:00
Kelvin Sherlock
c341d9a54f allow multiple linker 1 saves. each will generate a new file. 2019-12-14 22:24:24 -05:00
Kelvin Sherlock
a64c1ba843 cleanup segment number a bit 2019-12-14 21:56:52 -05:00
Kelvin Sherlock
f9ecc984a0 support for Merlin command files. 2019-12-14 19:01:12 -05:00
ksherlock
008862ed92
Create README.md 2019-12-11 10:07:12 -05:00
Kelvin Sherlock
515594346f sort relocation records
fix value for external labels.
2019-12-11 00:27:04 -05:00
Kelvin Sherlock
e3aa60be6a requires xcode 10, apparently, for optional. 2019-12-10 23:09:04 -05:00
Kelvin Sherlock
3aab0a4735 fix absolute shifting logic. 2019-12-10 23:00:59 -05:00
Kelvin Sherlock
bef129bd8c typo 2019-12-10 22:46:04 -05:00
Kelvin Sherlock
1ac35ec473 workaround missing charconv. also: print ! for missing symbols, ? for unused symbols. 2019-12-10 22:43:11 -05:00
Kelvin Sherlock
6fb0bf8532 try to work around old std libraries. 2019-12-10 22:11:29 -05:00
Kelvin Sherlock
06bdef4d80 fix travis 2019-12-10 21:57:22 -05:00
Kelvin Sherlock
debb2aebe9 add support for -D defines
fix segfault (switch id to be 0-based)
handle absolute symbols
2019-12-10 21:39:51 -05:00
ksherlock
43fd7a1b6e
Update .travis.yml 2019-12-10 13:43:49 -05:00
ksherlock
0672111313
Update .travis.yml 2019-12-10 13:33:54 -05:00
ksherlock
0d6d60c6c7
Update link.cpp 2019-12-10 13:27:53 -05:00
ksherlock
6e0bb5345d
missing header 2019-12-10 13:24:56 -05:00
ksherlock
60ac492cbb
Update Makefile 2019-12-10 13:20:07 -05:00
ksherlock
18c4a4f710
Update .travis.yml 2019-12-10 13:18:36 -05:00
ksherlock
48a21693b0
Update .travis.yml 2019-12-10 13:14:15 -05:00
ksherlock
03b35d1bc2
Create .travis.yml 2019-12-10 12:59:45 -05:00
ksherlock
b55305d11c
push string - only push a max of 255 chars. 2019-12-10 10:29:45 -05:00
Kelvin Sherlock
12bae449ba simple, 1-file link works. 2019-12-09 22:15:55 -05:00
Kelvin Sherlock
f8f698d3d6 misc fixes. 2019-12-09 21:58:01 -05:00
Kelvin Sherlock
7048c59813 it compiles... 2019-12-09 19:45:45 -05:00
Kelvin Sherlock
a4dfcec1f1 WIP 2019-12-09 13:02:15 -05:00
Kelvin Sherlock
5866fc8bc8 ignore 2019-12-08 13:55:49 -05:00
Kelvin Sherlock
5159061ff0 initial WIP 2019-12-08 13:55:33 -05:00