Commit Graph

68 Commits

Author SHA1 Message Date
Irmen de Jong
5a27b035b0 restructuring of the AST package 2019-07-08 13:33:31 +02:00
Irmen de Jong
31137743f0 simplified string handling a little in LiteralValue 2019-07-01 14:19:41 +02:00
Irmen de Jong
2c69e10489 heapId writable 2019-07-01 14:10:52 +02:00
Irmen de Jong
267c678292 more swap logic, some typing fixes 2019-06-28 22:10:01 +02:00
Irmen de Jong
29b3a7e94e optimize redundant typecasts, fix some runtime type casting errors 2019-06-27 21:09:21 +02:00
Irmen de Jong
ebd38f27e6 cleaned up some symbol visibilities 2019-06-23 13:49:35 +02:00
Irmen de Jong
b35430214b some more program node cleanups 2019-06-20 21:46:59 +02:00
Irmen de Jong
262e0bd6b9 fix avg() on float arrays 2019-04-21 03:04:36 +02:00
Irmen de Jong
e384822b2c array size in vardecl is optional when initializer array value is given 2019-04-16 01:19:51 +02:00
Irmen de Jong
5497de4234 optimize @( &thing )) in ast into just thing 2019-04-12 23:59:26 +02:00
Irmen de Jong
1069b5f5d5 w.i.p pointer-to 2019-04-04 21:45:30 +02:00
Irmen de Jong
0820716e7b added sqrt16() integer square root 2019-03-16 19:25:47 +01:00
Irmen de Jong
d9d83248fe implemented strlen() function 2019-03-15 23:10:26 +01:00
Irmen de Jong
77dc35dc6a added read_flags() function, uword2bcd routine no longer enables irq again if it wasn't enabled before calling it. 2019-03-05 23:10:00 +01:00
Irmen de Jong
b8ae808b65 compiler was confused about resulting expression type 2019-02-27 23:58:08 +01:00
Irmen de Jong
2f1249489b datatype cleanups 2019-02-25 01:22:56 +01:00
Irmen de Jong
d6ca1e6a12 fixed len() returntype 2019-02-24 15:25:46 +01:00
Irmen de Jong
86ff08e854 fix abs() and also try to convert const arguments to the desired datatype of subroutine params 2019-02-01 00:51:49 +01:00
Irmen de Jong
7459896155 finalized zeropage variable allocation 2019-01-27 22:59:40 +01:00
Irmen de Jong
798c4d7902 fix some optimizations of loops, added some conditional branch optimizations 2019-01-27 19:14:58 +01:00
Irmen de Jong
3a8f069854 zp allocations 2019-01-27 17:10:49 +01:00
Irmen de Jong
fa8a3c997a Expressions can now be split over multiple lines. Fixed datatype of len(). 2019-01-26 17:32:26 +01:00
Irmen de Jong
d37c9d1680 argument type casts for builtin functions, added memset, tweaked memcopy/memset assembly a bit 2019-01-23 00:19:29 +01:00
Irmen de Jong
75b38d7b84 added swap() slow version 2019-01-18 01:33:54 +01:00
Irmen de Jong
46c282d6d5 created mkword function 2019-01-09 01:03:33 +01:00
Irmen de Jong
295f7a6c6e added unsigned versions of sin and cos (0..255, 0..65535) 2019-01-06 22:56:06 +01:00
Irmen de Jong
39a8508daa sine table and bit shifting of signed values fixed 2019-01-05 02:42:58 +01:00
Irmen de Jong
32d82e8e56 asmsubs can now specify params and return values to be on the stack.
implemented fast integer fixed-point sin and cosine functions.
2019-01-04 22:11:46 +01:00
Irmen de Jong
2f9eabeac7 c64 irq handling routines 2019-01-02 02:47:52 +01:00
Irmen de Jong
c2eb181b5a added memcopy function 2019-01-01 18:38:43 +01:00
Irmen de Jong
ac8e7f4fa9 made setting/restoring the IRQ vector explicit 2019-01-01 18:05:50 +01:00
Irmen de Jong
d55bbcf706 removed string conversion builtin functions, they're now subroutines in c64util 2018-12-22 01:07:43 +01:00
Irmen de Jong
9ffc68acab casts 2018-12-20 16:17:58 +01:00
Irmen de Jong
5870006b2f introduced type cast "... as ..." instead of builtin functions 2018-12-20 03:17:41 +01:00
Irmen de Jong
3a7b341f47 fixes 2018-12-18 18:32:41 +01:00
Irmen de Jong
ca1d6bff56 log functions 2018-12-18 02:02:19 +01:00
Irmen de Jong
4be6a2eeef abs() 2018-12-18 01:43:04 +01:00
Irmen de Jong
bcfb390077 optimizations 2018-12-17 15:52:37 +01:00
Irmen de Jong
13a5a06ffb len() 2018-12-16 13:58:18 +01:00
Irmen de Jong
8597ea2ec7 correct printing of numbers 2018-12-14 23:15:44 +01:00
Irmen de Jong
48a6a05109 improve datatype assignment checks 2018-11-22 00:01:41 +01:00
Irmen de Jong
5bf2c4a798 got rid of matrix type 2018-10-30 20:29:03 +01:00
Irmen de Jong
05fc6fa47a tweaks 2018-10-30 09:22:32 +01:00
Irmen de Jong
f4e2641f7c assignments and stuff 2018-10-27 21:26:32 +02:00
Irmen de Jong
a825bbff96 fix array problems, limit size of arrays. 2018-10-23 00:52:51 +02:00
Irmen de Jong
79462b3448 fixed some problems with builtin functions 2018-10-20 23:53:39 +02:00
Irmen de Jong
ba384c9722 rsave/rrestore added 2018-10-14 22:32:03 +02:00
Irmen de Jong
7aec14524e fix datatype conversion issues 2018-10-12 15:50:32 +02:00
Irmen de Jong
1fe5c943fd adding singed integer datatypes 2018-10-11 21:50:10 +02:00
Irmen de Jong
2f7d03b6ab adding singed integer datatypes 2018-10-10 09:21:20 +02:00