Irmen de Jong
|
1e441c2ddf
|
tweak vm codegen
|
2022-08-07 13:45:03 +02:00 |
|
Irmen de Jong
|
f718f4251b
|
working on better encoding of romsub in new ast/vmtarget
|
2022-08-07 12:21:10 +02:00 |
|
Irmen de Jong
|
197081f10d
|
keyboardhandler
|
2022-08-04 23:04:16 +02:00 |
|
Irmen de Jong
|
00b717cde8
|
tweak
|
2022-08-04 18:35:10 +02:00 |
|
Irmen de Jong
|
a0deb463c9
|
optimized codegen for some equality comparison expressions and some logical expressions
|
2022-07-31 15:25:54 +02:00 |
|
Irmen de Jong
|
90ddec2ad8
|
avoid multiple change events in watch mode
added bsieve example
|
2022-07-31 11:58:27 +02:00 |
|
Irmen de Jong
|
f531daa872
|
on C64, the cx16.r0...cx16.r15 virtual regs are now in zeropage as well when using kernalsafe or full
|
2022-07-28 19:13:33 +02:00 |
|
Irmen de Jong
|
046dceb5c2
|
added optimized case for signed division by 2
|
2022-07-24 13:59:35 +02:00 |
|
Irmen de Jong
|
dcc1f00048
|
fix rounding errors in signed divide by power-of-two
The optimized bit-shifting division is removed (for now)
|
2022-07-24 12:34:55 +02:00 |
|
Irmen de Jong
|
05f935b598
|
simplify & fix recursion detector
|
2022-07-22 22:22:43 +02:00 |
|
Irmen de Jong
|
aeabf0f324
|
nicer colors
|
2022-07-17 21:37:15 +02:00 |
|
Irmen de Jong
|
7d4695c5b2
|
cx16: graphics module y resolution corrected from 200 to 240. added 'cx16/circles' example.
|
2022-07-17 18:59:52 +02:00 |
|
Irmen de Jong
|
8e1071aa89
|
fix compiler crashes: txt.chrout("a"), uword[] a = ["ls", subroutine] without & before subroutine.
|
2022-07-15 23:17:03 +02:00 |
|
Irmen de Jong
|
f690f58bd4
|
callfar() now accepts a variable as address, so it can be used to indirect JSR to a subroutine whose address is not fixed. ('goto' already could indirect JMP to a variable address.)
|
2022-07-14 19:29:59 +02:00 |
|
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 |
|