Commit Graph

124 Commits

Author SHA1 Message Date
Irmen de Jong
f83b9732ee User defined blocks are sorted first, before library blocks. This prioritizes zero page allocation to user code (and makes reading the program easier) 2019-02-01 01:22:27 +01:00
Irmen de Jong
73b0cc4056 docs 2019-01-31 23:46:58 +01:00
Irmen de Jong
53045b9e36 idea 2019-01-29 23:48:26 +01:00
Irmen de Jong
d35d28ac5a docs about gradle and building the compiler, fix shell build script 2019-01-29 23:32:43 +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
204cc03fc8 doc 2019-01-26 23:28:28 +01:00
Irmen de Jong
6f583e7092 readme 2019-01-26 19:13:42 +01:00
Irmen de Jong
c1f196f2aa readme 2019-01-26 18:56:53 +01:00
Irmen de Jong
2663781fde readme 2019-01-26 18:44:30 +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
1ff68b06da fix compiler crash, rasterbars alignment, docs. 2019-01-25 01:35:46 +01:00
Irmen de Jong
163c6bc628 improved docs on how to run the compiler 2019-01-24 23:31:16 +01:00
Irmen de Jong
f1a7fa1870 doc 2019-01-24 02:43:25 +01:00
Irmen de Jong
39a5e341af sort assignments to enable same-value optimization 2019-01-23 21:50:43 +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
dd02d97db4 fixed and optimized branches and gotos in if statements 2019-01-22 22:52:43 +01:00
Irmen de Jong
5471c5211c make %asminclude work, restructure prog8lib into separate asm file 2019-01-21 00:49:48 +01:00
Irmen de Jong
75b38d7b84 added swap() slow version 2019-01-18 01:33:54 +01:00
Irmen de Jong
870c6ea747 stuff 2019-01-14 23:48:18 +01:00
Irmen de Jong
98e95b5707 replaced str2ubyte 2019-01-13 14:20:51 +01:00
Irmen de Jong
e3eace9e28 project folder restructure 2019-01-09 23:57:27 +01:00
Irmen de Jong
b2ecf16234 fixed some array length loop issues 2019-01-09 22:28:04 +01:00
Irmen de Jong
f1b2bd1cc4 got rid of separate '//' floordivision operator 2019-01-09 22:01:47 +01:00
Irmen de Jong
46c282d6d5 created mkword function 2019-01-09 01:03:33 +01:00
Irmen de Jong
58854ef45b doc fix 2019-01-08 02:25:22 +01:00
Irmen de Jong
0146a39ebb moved some more stuff around 2019-01-08 02:09:35 +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
04bbdf5991 div and mult by a power of 2 are now optimized into shifts. Added bit shift operators << and >> 2019-01-06 08:20:22 +01:00
Irmen de Jong
d203bfaf25 normal division is always float, implemented (u)byte integer division 2019-01-06 01:43:47 +01:00
Irmen de Jong
9f4ac37a00 split off c64flt library for all floating point routines 2019-01-05 16:09:05 +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
39a8b76534 force_output option added 2019-01-01 21:47:19 +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
a319e6f9ec direct memory access and sprite fixes 2018-12-31 04:48:26 +01:00
Irmen de Jong
aeb963673a sprites example 2018-12-31 01:52:18 +01:00
Irmen de Jong
500777bf78 added direct memory access ("poke"/"peek") 2018-12-31 01:10:42 +01:00
Irmen de Jong
904e317781 cleanups, fix scope of certain generated nodes in for loops 2018-12-25 01:05:38 +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
ee893e5a2c multiplications 2018-12-20 23:28:03 +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
c1204b83bd changed syntax of subroutine parameters (now the same as vardecls) 2018-12-19 02:51:22 +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
bcfb390077 optimizations 2018-12-17 15:52:37 +01:00
Irmen de Jong
7cb42de60e more float asm operations, fix some % operator problems 2018-12-13 01:19:43 +01:00
Irmen de Jong
be819ba8a7 got the number guessing example fully working on c64 asm 2018-12-11 00:09:37 +01:00
Irmen de Jong
f070dc22bb save X register automatically when calling sub that clobbers X 2018-12-09 19:48:59 +01:00