Commit Graph

56 Commits

Author SHA1 Message Date
mooz d5c53b2f01 op_eval_byte and op_eval_word are now arch specific. 2018-11-04 23:12:28 +01:00
mooz 662ef74b53 Moved architecture independent code to asm.lua 2018-11-03 17:16:17 +01:00
g012 9c576ef774 [NES] Revamped and tested all GxROM PRG bank switching, and added a sample.
Added asserts in 6502.lua.
2018-01-03 20:34:09 +01:00
g012 808bf10b26 Fixed labels which are not sections not added to symbolsorg table. 2017-12-28 16:47:00 +01:00
g012 f3bd018090 Added ability to define the zero page outside 00-FF, with PC-Engine in mind. 2017-12-25 23:23:22 +01:00
g012 22a89970f8 Allowed free positioning of referenced-by-string using charset of CHR data, by delaying evaluation of charset value. 2017-12-23 23:58:42 +01:00
g012 99deb2b875 Fixed DASM symbol file generation. 2017-12-20 19:18:21 +01:00
g012 1245156c19 Added FCEUX and Mesen symbol files generation for NES. 2017-12-20 18:55:53 +01:00
g012 3db7a48f48 Added strip_empty option and weak sections, and empty sections are no more removed by default.
Allowed to pass section references to VCS far calls.
2017-10-14 22:51:18 +02:00
g012 0981f21032 Wrote documentation.
Fixed link error on unbounded locations.
2017-10-08 02:17:44 +02:00
g012 e07c87b45d Added vcs_flush.l65 logo sample.
Fixed samepage bug when it ended on last instruction of section.
2017-10-06 00:26:16 +02:00
g012 cdf1add9f3 Added hello world VCS sample.
Fixed charset indices.
2017-10-05 11:48:56 +02:00
g012 def316e982 Added helpers for implementing cross bank calls using tjoppen's method of encoding the bank number into the 3 MSB. 2017-10-04 00:19:03 +02:00
g012 462c4a3b8d Added optional far keyword with encapsulation for far calls of not yet declared labels. 2017-10-03 22:55:58 +02:00
g012 27887f42c6 Tested cross bank stubs generation. 2017-10-03 11:51:36 +02:00
g012 4d6749f1a3 Added related sections constraint. 2017-10-02 00:40:38 +02:00
g012 40bd38aa7c Allowed reuse of skipped space within sections. 2017-10-01 00:14:11 +02:00
g012 54b5939d8d Added skip() to make holes in sections. 2017-09-30 14:53:27 +02:00
g012 71e6f35a3c Sections now generate regular labels for themselves. 2017-09-30 00:35:59 +02:00
g012 a36c8237df Fixed error reporting of some unresolved symbols. 2017-09-28 01:37:45 +02:00
g012 879b98eec4 Improved error messages. 2017-09-27 23:57:50 +02:00
g012 f0dcdfeaa7 Added more VCS mapper stubs. 2017-09-24 16:05:37 +02:00
g012 3d2dc97870 Added option per section to preserve section during stripping. 2017-09-23 23:46:28 +02:00
g012 3f52d2d329 Added dead stripping. 2017-09-23 23:42:32 +02:00
g012 7eabbe80a6 First attempt to add k65 style syntax. 2017-09-22 23:58:01 +02:00
g012 378667685d Added dc.b/w/l syntax for auto encapsulation.
Disabled encapsulation for numbers and strings.
Added long() data definition function.
2017-09-22 12:29:48 +02:00
g012 63cdd88f21 Fixed byte(string) bug introduced with last commit. 2017-09-21 23:20:05 +02:00
g012 a069b21c91 First VCS sample.
Fixed branch target offset.
Fixed empty location removal.
2017-09-21 22:55:09 +02:00
g012 1d372c30b9 Fixed unbounded locations usage computation. 2017-09-21 19:54:03 +02:00
g012 bf8b162c90 Reformatted stats printing, and moved it to __tostring. 2017-09-21 16:02:26 +02:00
g012 48996741ef Set constraint analysis of sections to use rorg address instead of org. 2017-09-21 15:04:44 +02:00
g012 dc2d7feff7 Changed _ to . in symbol file for local labels.
Removed DASM style comments in symbol file.
2017-09-21 00:56:36 +02:00
g012 9eebcb520a Added rorg option to locations for relocatable origin. 2017-09-21 00:00:57 +02:00
g012 dbe11c442f Fixed constraint testing in link phase.
Minimized usage of align offsets during link.
2017-09-20 16:14:48 +02:00
g012 59a2a614ba Optimized a bit linking strategy. 2017-09-20 11:09:51 +02:00
g012 86d46f101e Added local label references resolver. 2017-09-20 10:27:38 +02:00
g012 3e5d4ee9ff Fixed bug when za* addressing is not evaluated for size. 2017-09-20 00:35:46 +02:00
g012 cc1c6f74ec Fixed initial offset of rom.
Fixed relative branch offset.
2017-09-19 22:49:24 +02:00
g012 8ba7ab6bf6 Generates a binary for the first time. 2017-09-19 15:53:10 +02:00
g012 d3cee527f7 Fixed various bugs in 6502.lua until genbin. 2017-09-19 13:55:01 +02:00
g012 469296f144 Added all remaining opcodes. 2017-09-19 00:53:37 +02:00
g012 3974d3bf5d Added relative opcodes. 2017-09-18 16:01:52 +02:00
g012 663040a62c Added local labels. 2017-09-18 12:29:14 +02:00
g012 a602795911 Added zpg and abs opcodes. 2017-09-17 22:56:39 +02:00
g012 7588e8f51e Added asbin call in genbin. 2017-09-17 00:42:30 +02:00
g012 6e7b9fa890 Added functions for immediate and implied opcodes. 2017-09-16 23:43:21 +02:00
g012 e98f60b429 Added more options for byte and word. 2017-09-16 16:48:28 +02:00
g012 cb81b5fe92 Added charset function, and more options to byte arguments. 2017-09-16 11:10:51 +02:00
g012 a40ab23939 Added short lambda function syntax \args(expr). 2017-09-11 22:52:16 +02:00
g012 ec93899042 Added shortcut @@name for section "name". 2017-09-10 01:25:51 +02:00