Commit Graph

1060 Commits

Author SHA1 Message Date
Irmen de Jong
30c531b39e attempting to fix array expression inplace assign 2023-06-28 00:38:08 +02:00
Irmen de Jong
e7b631b087 allow comment lines inside array initializer value 2023-06-27 23:30:37 +02:00
Irmen de Jong
a9f5dc036c fix cpu stack corruption in array assignment codegen 2023-06-27 18:49:49 +02:00
Irmen de Jong
0a83b51e00 allow more curly brace styles 2023-06-27 01:59:22 +02:00
Irmen de Jong
eab63ecc6c allow curly brace on next line also after subroutine and when 2023-06-27 01:29:25 +02:00
Irmen de Jong
b0794cf35e added hiram bank number to -varshigh 2023-06-27 00:27:34 +02:00
Irmen de Jong
eae41de27d improve errors generated for undefined symbols 2023-06-25 15:19:51 +02:00
Irmen de Jong
8c617515ba don't prefix 3-letter symbols too aggressively (could cause some compilation errors) 2023-06-23 23:36:59 +02:00
Irmen de Jong
04e4e71f2e uword == str is now possible (sugar for string.compare) 2023-06-22 00:20:30 +02:00
Irmen de Jong
a587482edf optimize dangling else 2023-06-18 13:46:02 +02:00
Irmen de Jong
f56c12ee4e cx16 spotlight example 2023-06-18 12:49:22 +02:00
Irmen de Jong
4bb9ae61f2 library source links 2023-06-18 02:31:45 +02:00
Irmen de Jong
ff7f3484e4 atan 2023-06-17 23:01:47 +02:00
Irmen de Jong
5da3abe6b4 fix silent typecast on return statements that could lose data (word->byte) 2023-06-17 14:44:36 +02:00
Irmen de Jong
c0b398e0ce add various math.atan() routines 2023-06-17 00:43:33 +02:00
Irmen de Jong
a521982576 fix subroutine inline problem with strings 2023-06-09 21:45:05 +02:00
Irmen de Jong
ea6926e57d fix float expression crash: fl = abs/sqrt (fl)+0.5 2023-06-09 19:28:34 +02:00
Irmen de Jong
ba25b7fee6 fix diskio.diskname(). cx16: add diskio.curdir() 2023-06-07 22:38:51 +02:00
Irmen de Jong
7ee162d98b preparing version 9.0 2023-06-05 19:47:00 +02:00
Irmen de Jong
380f557c45 vm: implement split incr/decr 2023-06-03 22:22:13 +02:00
Irmen de Jong
bfaad1388c IR: handle split arrays without new custom opcodes 2023-06-03 01:51:02 +02:00
Irmen de Jong
0b580ad05d v9 upgrading doc 2023-06-01 20:23:04 +02:00
Irmen de Jong
bb35a80177 %option splitarrays now also at module level 2023-05-31 21:50:41 +02:00
Irmen de Jong
24fc95ac81 fix atari target syslib 2023-05-31 20:58:00 +02:00
Irmen de Jong
8f864417c4 added %option splitarrays (block level) 2023-05-31 18:49:21 +02:00
Irmen de Jong
bbc02752c9 use split word arrays in various examples, fix codegen issue, docs 2023-05-29 15:34:33 +02:00
Irmen de Jong
82898f7bba fix some split array issues in 6502 codegen 2023-05-28 22:24:56 +02:00
Irmen de Jong
c94e292176 more split array stuff 2023-05-27 12:47:11 +02:00
Irmen de Jong
e15bc68c9b added gfx2.fill() flood fill routine 2023-05-23 00:50:10 +02:00
Irmen de Jong
0c94e377fc Merge branch 'v8_maintenance' 2023-05-21 16:09:31 +02:00
Irmen de Jong
061617122a Merge branch 'v8_maintenance'
# Conflicts:
#	examples/test.p8
2023-05-20 18:07:57 +02:00
Irmen de Jong
06d1570142 cx16: added diskio.save_raw() headerless save routine 2023-05-20 00:00:50 +02:00
Irmen de Jong
093c370faa todo 2023-05-19 01:26:15 +02:00
Irmen de Jong
300e2fe9f8 IR: wrong attempt at optimizing register usage by reusing registers inside different code chunks 2023-05-18 21:57:21 +02:00
Irmen de Jong
91421b0c62 IR handy sequence shortcut functions 2023-05-18 11:32:20 +02:00
Irmen de Jong
c098ad2b3b fix vm minf/maxf 2023-05-17 23:18:14 +02:00
Irmen de Jong
b43223cb7a added clamp() builtin function and floats.clampf() 2023-05-17 23:12:58 +02:00
Irmen de Jong
1af38e62bc removed floats.fabs() and floats.sqrt()/fsqrt() 2023-05-17 00:46:15 +02:00
Irmen de Jong
7e734214dc v8_maintenance branch made 2023-05-15 23:01:43 +02:00
Irmen de Jong
0e3d75cfeb move irType() to intermediate module 2023-05-14 20:44:32 +02:00
Irmen de Jong
630c8a5faa IR: fix romsub encoding 2023-05-14 18:08:06 +02:00
Irmen de Jong
905921a684 IR: new (sys)call instructions that encapsulate the full subroutine call
to fix the bugs resulting from nesting subroutine calls (as param to another call etc)
2023-05-14 15:20:25 +02:00
Irmen de Jong
bff3c4f95c IR now converts IRInlineAsmChunk (of type IR) into regular code chunks directly.
.p8ir files usually won't contain <INLINEASM> nodes any longer
2023-05-09 21:04:31 +02:00
Irmen de Jong
4c8898a639 fix typecheck crash on certain byte to word assignments 2023-05-08 23:02:48 +02:00
Irmen de Jong
97df33ab1a IR: fix byte to word assignment not doing value extension 2023-05-08 22:47:00 +02:00
Irmen de Jong
ef46fb2685 refactor 2023-05-08 21:51:55 +02:00
Irmen de Jong
d5d6dd3614 optimize typecast expr 2023-05-08 03:30:14 +02:00
Irmen de Jong
6db715d879 optimize multiplication expr 2023-05-08 02:10:54 +02:00
Irmen de Jong
8cbfe64f19 optimize some carry flag assembly 2023-05-07 23:27:49 +02:00
Irmen de Jong
fd1e9971e4 asmsub Pc params and returnvalue must be boolean 2023-05-07 22:59:30 +02:00