1
0
Fork 0
mirror of https://github.com/notwa/lips synced 2024-11-14 09:29:03 -08:00
Commit graph

217 commits

Author SHA1 Message Date
0fdac556a8 fix specials like %lo and %hi
when I rewrote Muncher into TokenIter,
I removed the return value of self:advance(),
and forgot to handle this case that relied on it.
2018-04-28 21:39:31 +02:00
8fbbf955ec fix dead link to datasheet 2017-05-24 21:29:07 +00:00
b97098a844 update readme etc. 2017-01-04 01:33:26 -08:00
ec76e37014 add \x escapes to strings...
also adds the plain \e escape and allows escapes in filenames.
2016-12-28 04:04:05 -08:00
793a454b38 add a gameshark writer 2016-12-28 03:11:22 -08:00
af042efba1 update notes 2016-12-28 03:11:06 -08:00
81f5f317bf handle the alternative names as well 2016-12-28 02:25:51 -08:00
272ef0fbde implement addressing modes for fpu load/stores 2016-12-28 02:09:15 -08:00
b80fb49a22 allow _ in expr vars; tweak number matching 2016-12-01 10:31:55 -08:00
63644df1bc lex the same number syntax in expressions 2016-12-01 10:19:09 -08:00
9f6252117e allow comments after filenames
this is hack city but it will do until i refactor this crap
2016-11-29 09:58:08 -08:00
8546411e14 handle ; comments in variable definitions again
this is hacky but i don't wanna break existing code.
if you used // comments, then you'll have to change.
2016-11-27 22:16:32 -08:00
e5cc5fd068 improve variable name checks 2016-11-27 22:01:15 -08:00
635621de0d update notes 2016-11-27 21:49:46 -08:00
63ddf558df parse variable definitions as expressions 2016-11-27 21:37:57 -08:00
6bae5647c8 fix parsing of 0 in expressions 2016-11-27 21:25:57 -08:00
ab493693a9 add support for variables in expressions 2016-11-27 21:17:42 -08:00
64ef102183 disallow variable names beginning with a number
this makes lexing easier.
i don't think this worked properly anyway.
2016-11-27 21:16:38 -08:00
de2618bb61 allow expressions in variable definitions 2016-11-27 21:01:30 -08:00
067267c313 allow Preproc to throw errors again 2016-11-27 20:28:53 -08:00
8aa3c58f8f allow expressions in instructions (whoops) 2016-11-27 20:14:36 -08:00
ad0269cc61 fix incbin parsing again 2016-11-27 20:03:26 -08:00
3c1cbf0901 remove defunct comments 2016-11-27 20:03:26 -08:00
437b816f85 refactor label resolution into its own method 2016-11-27 20:03:23 -08:00
29ae63ed34 update notes 2016-11-27 15:34:52 -08:00
2143128628 split Preproc expansion into Expander class 2016-11-27 15:14:51 -08:00
3aa5d01a21 refactor some utility functions 2016-11-27 14:02:28 -08:00
fb2e588f79 move arg_types to TokenIter 2016-11-27 06:06:48 -08:00
0d1527a773 refactor Muncher into separate TokenIter class
this also fixes lexing the EOL after an include directive.
2016-11-27 05:58:08 -08:00
e1ae1fdd64 optimize incbin via string passthru 2016-11-23 12:22:31 -08:00
3d301d0a20 tweak notes a little more 2016-11-23 00:14:18 -08:00
15bba61aae write notes on internal workings and potential improvements 2016-10-19 08:24:57 -07:00
cdc0f8edb2 add a barebones expression parser
at the moment, this probably only works in directives.
some of the operators are still unimplemented, and the errors are poor.
there will be support for accessing variables in the future.
2016-10-14 09:27:19 -07:00
575af689b5 fix loading labels with overflowed PC 2016-10-14 04:50:14 -07:00
11b62bf9de fix a typo that broke table unpacking 2016-10-14 04:19:11 -07:00
dfd925e70f use the proper term for this (memoizing) 2016-10-14 03:34:00 -07:00
ef07b5b18e fix link to writers 2016-10-14 03:33:46 -07:00
6548bd3e5b fix typos 2016-10-11 15:45:44 -07:00
115bae0689 use LI for remaining CALL functionality 2016-05-18 03:07:08 -07:00
dcdfc22f0a implement basic CALL pseudo-instruction 2016-05-18 01:48:15 -07:00
6a29dcd38d add TODO list 2016-05-14 03:55:33 -07:00
bfbe2845e6 actually implement path handling for .incasm 2016-05-14 03:27:30 -07:00
1540062a6f clean up informat parsing a little 2016-05-13 07:57:39 -07:00
8c1537a650 Merge pull request #1 from CloudMax94/patch-1
Update README.md
2016-05-13 07:26:09 -07:00
Max Persson
0040292378 Update README.md 2016-05-13 16:23:05 +02:00
0ec6b24531 use R# instead of REG# for registers 2016-05-10 17:18:17 -07:00
e4e8e16ea5 implement all branch pseudo-instructions 2016-05-08 15:21:16 -07:00
8375eaff08 reimplement branch pseudos, remove branch-immediates for now 2016-05-01 16:31:09 -07:00
51820234a8 allow VARSYMs in directives 2016-05-01 03:56:56 -07:00
b596405e76 add basic branch pseudos, add REG(REG) addressing 2016-05-01 02:04:27 -07:00