Irmen de Jong
|
2d600da8b6
|
fix codegen crash on certain nested typecast
|
2022-07-13 22:24:31 +02:00 |
|
Irmen de Jong
|
35af53828a
|
fix endless loop in optimizer, fix cx16 register clobbering in psg interrupt handler, fix crash on certain arrays, fix undefined symbol when it's in another imported module
|
2022-07-13 18:42:06 +02:00 |
|
Irmen de Jong
|
10ddd5b127
|
fixed missing non-boolean operand cast in logical expressions
|
2022-07-12 22:28:06 +02:00 |
|
Irmen de Jong
|
edf12bec71
|
improve bool params typecasting, fix compiler crash on abs(floatvar)
|
2022-07-12 17:52:37 +02:00 |
|
Irmen de Jong
|
ff1fc28287
|
added immediate value vm logical instructions because these are so common
|
2022-07-12 16:12:32 +02:00 |
|
Irmen de Jong
|
314398ba4c
|
added immediate value vm arithmetic instructions because these are so common
|
2022-07-12 15:21:26 +02:00 |
|
Irmen de Jong
|
68da661edc
|
optimize comparison to true/1 into comparison to zero, optimize while/until conditions
|
2022-07-11 16:42:52 +02:00 |
|
Irmen de Jong
|
88cbb6913d
|
tweak bool type handling
|
2022-07-11 14:55:50 +02:00 |
|
Irmen de Jong
|
7a26646e1b
|
tweak bool type handling
|
2022-07-11 02:08:12 +02:00 |
|
Irmen de Jong
|
fb63434eee
|
tweak maze example
|
2022-07-09 22:13:30 +02:00 |
|
Irmen de Jong
|
97f90d9684
|
Merge branch 'master' into bool_type
|
2022-07-09 22:09:49 +02:00 |
|
Irmen de Jong
|
f91786367f
|
added maze example
|
2022-07-09 22:00:46 +02:00 |
|
Irmen de Jong
|
211e2bb37a
|
improved bool type checking
|
2022-07-08 22:29:13 +02:00 |
|
Irmen de Jong
|
d2d08bf143
|
fix compiler error about bool vs ubyte
|
2022-07-08 22:03:05 +02:00 |
|
Irmen de Jong
|
8acb37b6c2
|
use bool type in examples and libraries
|
2022-07-08 21:50:32 +02:00 |
|
Irmen de Jong
|
81b3d2db4f
|
fix compiler crash
|
2022-07-08 21:50:06 +02:00 |
|
Irmen de Jong
|
1dfa8ee7d8
|
add ARRAY_BOOL array type
|
2022-07-07 23:07:30 +02:00 |
|
Irmen de Jong
|
1163543a98
|
fix bool param lookup problem
|
2022-07-07 22:23:56 +02:00 |
|
Irmen de Jong
|
bdb7de34be
|
added several compiler checks against weird boolean type use in expressions
|
2022-07-07 22:23:56 +02:00 |
|
Irmen de Jong
|
9500fc11ac
|
document new bool datatype and removal of boolean() conversion function
|
2022-07-07 22:23:56 +02:00 |
|
Irmen de Jong
|
41f4e22a17
|
introduce BOOL type
|
2022-07-07 22:23:56 +02:00 |
|
Irmen de Jong
|
ea2812f50f
|
add max volume to psg envelope
|
2022-07-03 11:26:56 +02:00 |
|
Irmen de Jong
|
3ec05709d5
|
convert the sounds in cx16 tehtriz to use the psg module instead
|
2022-07-03 01:40:29 +02:00 |
|
Irmen de Jong
|
4bdac7404a
|
added sustain to psg envelope
|
2022-07-03 00:55:25 +02:00 |
|
Irmen de Jong
|
cc41218d37
|
added nicer vm example
|
2022-07-03 00:41:04 +02:00 |
|
Irmen de Jong
|
7a3745f642
|
psg tweaks
|
2022-07-02 20:33:40 +02:00 |
|
Irmen de Jong
|
f8658f6afa
|
precalc vera freq to not use floating point math anymore
|
2022-07-02 19:40:18 +02:00 |
|
Irmen de Jong
|
223b725a10
|
psg abstraction and attack/release envelope
|
2022-07-02 18:47:12 +02:00 |
|
Irmen de Jong
|
25aad8d7be
|
improve const-evaluation of builtin expressions
|
2022-07-02 16:29:01 +02:00 |
|
Irmen de Jong
|
b2c9b7635d
|
revert restriction on certain associative operator reshuffling
it caused larger generated code
|
2022-07-02 13:59:24 +02:00 |
|
Irmen de Jong
|
24d13dd120
|
fix problematic optimizations to logical expressions
|
2022-07-02 00:56:24 +02:00 |
|
Irmen de Jong
|
965340ff90
|
logical and/or/xor/not all replaced by bitwise &,|,^,~ (ast, codegens)
this also fixed some invalid outcomes of logical expressions!
|
2022-07-02 00:38:17 +02:00 |
|
Irmen de Jong
|
8e36fe6bef
|
temporary workaround for code problem around 'not'
|
2022-07-01 01:01:15 +02:00 |
|
Irmen de Jong
|
f675dbc726
|
vm var allocator now also recognises the memory-mapped variables. no longer crashes
|
2022-06-30 22:09:49 +02:00 |
|
Irmen de Jong
|
2ad4fdbbb9
|
added cx16 version of bdmusic, needs ADSR though
|
2022-06-30 21:33:48 +02:00 |
|
Irmen de Jong
|
97cb0cbd08
|
tweak "not" removal/rewriting
|
2022-06-30 02:16:30 +02:00 |
|
Irmen de Jong
|
ef92451d1a
|
fix logical expressions on arbitrary values, for now with boolean() around the operands
|
2022-06-28 01:18:36 +02:00 |
|
Irmen de Jong
|
06184bdcb1
|
get rid of failed mccarthy shortcut evaluation
|
2022-06-27 21:44:52 +02:00 |
|
Irmen de Jong
|
af98d01053
|
failed attempt at McCarthy shortcut evaluation
|
2022-06-27 21:40:48 +02:00 |
|
Irmen de Jong
|
bb1cda0916
|
fix: boolean values of terms in logical expressions are now properly evaluated
|
2022-06-26 23:55:34 +02:00 |
|
Irmen de Jong
|
a6d0ea347c
|
bank caching not required for pcm_play()
|
2022-06-26 22:08:10 +02:00 |
|
Irmen de Jong
|
0fcd57192b
|
cx16diskio.f_read() now correctly deals with banked ram boundary
|
2022-06-26 21:42:56 +02:00 |
|
Irmen de Jong
|
5656ec11d3
|
fix missing abs(byte) routine
|
2022-06-24 01:51:54 +02:00 |
|
Irmen de Jong
|
eb53e44cb0
|
zsound stream test
|
2022-06-24 01:51:33 +02:00 |
|
Irmen de Jong
|
8ab99f6129
|
zsound combo example
|
2022-06-21 00:38:59 +02:00 |
|
Irmen de Jong
|
bda016bb3b
|
optimized 6502 codegen for logical expressions
|
2022-06-15 22:17:15 +02:00 |
|
Irmen de Jong
|
cc174b7b85
|
added boolean() builtin function and use it to get rid of !=0 comparisons
|
2022-06-14 23:34:45 +02:00 |
|
Irmen de Jong
|
775c85fc18
|
don't swap operands that would change function evaluation order + vm: fix label casing error
|
2022-06-13 00:25:45 +02:00 |
|
Irmen de Jong
|
5a756aaed9
|
Pipe expression "|>" removed from the language
|
2022-06-12 18:41:42 +02:00 |
|
Irmen de Jong
|
dca092fd7c
|
fix pipe expression when start term is constant number
|
2022-06-12 16:59:28 +02:00 |
|