Irmen de Jong
5dd45b714a
psg module: the envelope handler no longer writes to vera PSG voices that haven't been enabled
2025-03-12 23:07:13 +01:00
Irmen de Jong
23474360ec
fix ncompare calls
2025-03-07 23:56:13 +01:00
gillham
81c255c450
Add strings.ncompare (and backing strncmp_mem) to compare up to n characters of a string. ( #164 )
...
* Add strings.ncompare (and backing strncmp_mem) to compare up to n characters of a string.
* Document strings.ncompare.
2025-03-07 23:53:56 +01:00
Irmen de Jong
220ab773aa
fix asmgen error when assigning address of split word array without explicit adressof syntax
2025-03-06 23:20:42 +01:00
Irmen de Jong
582a70b046
fix calling label as subroutine (JSR label)
2025-03-04 21:53:53 +01:00
Irmen de Jong
5b63590ebf
fix symbol prefixing bug triggered by certain usage of %option no_symbol_prefixing
2025-03-03 22:26:19 +01:00
Irmen de Jong
125b66c929
fix crash in asmgen for boolean comparison with false, when not using optimizations
2025-03-01 23:57:55 +01:00
Irmen de Jong
3e2b2a698d
Separate simple Ast and Symboltable from codeCore into new simpleAst module. VirtualMachine and Intermediate do not need them, just codeCore.
2025-02-24 22:06:52 +01:00
Irmen de Jong
e55ce5504e
added %option romable to enable romable mode, but only generate a bunch of warnings for problematic codegeneration atm
2025-02-20 23:40:44 +01:00
Irmen de Jong
d06e9ea7f6
allow comparisons against constant values with different type
2025-02-19 20:19:20 +01:00
Irmen de Jong
fc03d6f332
changed -sourcelines option to -nosourcelines (default is now to include them)
2025-02-12 21:27:46 +01:00
Irmen de Jong
2aeb7a838e
finalize extracting neo and atari compiler targets into configuration files instead
2025-02-12 14:01:04 +01:00
Irmen de Jong
99ff5dd078
extracting neo and atari compiler targets into configuration files instead
2025-02-12 13:58:34 +01:00
Irmen de Jong
49982b49b6
extracting neo and atari compiler targets into configuration files instead
2025-02-12 13:58:34 +01:00
Irmen de Jong
9e79722a7f
fix rangeexpression value type casting
2025-02-11 22:23:07 +01:00
Irmen de Jong
c7f0ff11ac
fix crash when initializing string variable with a non-string value
2025-02-10 02:54:53 +01:00
Irmen de Jong
cd2cc89e6a
fix type errors in Range containment check
2025-02-10 02:27:34 +01:00
Irmen de Jong
5b58e5b158
fix unit tests
2025-02-02 21:52:33 +01:00
Irmen de Jong
216825b98a
cx16: made fileselector example into a loadable library
2025-02-02 04:13:03 +01:00
gillham
e646dd1ed1
Add an encoding for the C64 OS custom character set. Use c64os: ( #158 )
2025-01-31 23:41:55 +01:00
Irmen de Jong
a106c88054
unit test for %output library, and docs.
2025-01-27 23:26:21 +01:00
Irmen de Jong
ee784e1ccc
fix indication for when imported modules are library modules or not.
...
This fixes a bug where syslib and such gets optimized away when it is loaded from an alternative library location using the configurable target library path property setting.
2025-01-26 21:19:29 +01:00
Irmen de Jong
d0c184c7de
remove needless 0 initializations of multi decl's
...
fix outdated text
2025-01-23 22:42:58 +01:00
Irmen de Jong
7a13f57ab0
enforce variable init values are only strings or arrays
2025-01-20 01:25:17 +01:00
Irmen de Jong
0c882836d9
support multi-value variable initialization: ubyte a,b,c = multi()
2025-01-18 22:08:31 +01:00
Irmen de Jong
228be5cd04
callgraph no longer forgets some identifier occurrences
2025-01-18 21:18:08 +01:00
Irmen de Jong
e8f3af6981
adding a configurable compilation target
2025-01-17 00:56:44 +01:00
Irmen de Jong
09a17743ad
merge IMachineDefinition into ICompilationTarget
2025-01-13 21:45:38 +01:00
Irmen de Jong
2ab2130000
renamed "intermediate AST" to "simplified AST"
2025-01-10 20:33:44 +01:00
Irmen de Jong
66558f7638
IR support for multi-value returns in normal subroutines, documentation.
2025-01-09 22:39:08 +01:00
Irmen de Jong
a6f9ed07e7
6502 codegen for multi-assigns
2025-01-09 00:38:47 +01:00
Irmen de Jong
8f6b5676d7
working on codegen for multi-value returns
2025-01-07 20:35:49 +01:00
Irmen de Jong
ca9422bbe9
be able to parse multiple return values (sub + return)
2025-01-07 01:51:54 +01:00
Irmen de Jong
e5ff3c1ff3
fix compiler crash when using strings in if-expression. Remove harmless info message.
2025-01-06 01:34:42 +01:00
Irmen de Jong
78c71bbf0e
adding file selector example
2024-12-30 00:00:31 +01:00
Irmen de Jong
37c2c1bf0b
support &, &< and &> on array elements from split word arrays, not just on the array as a whole
2024-12-30 00:00:31 +01:00
Irmen de Jong
056c0a24d9
better way of doing BIT instructions
2024-12-30 00:00:31 +01:00
Irmen de Jong
827df04b32
IR: BIT instruction added
2024-12-30 00:00:31 +01:00
Irmen de Jong
bdccffbb8e
stricter type checking in multivalue assigns, avoids possible invalid output due to missing type cast
2024-12-26 22:20:08 +01:00
Irmen de Jong
4daa909f32
fix path normalization problems,
...
allow ~ in srcdirs compiler flag
2024-12-26 17:42:20 +01:00
Irmen de Jong
529ea5bf58
added coroutines library and multitasking example. Added sys.push_returnaddress().
2024-12-26 00:57:39 +01:00
Irmen de Jong
0653d430a7
fix compiler crash related to uword array parameters type checking
2024-12-25 12:12:20 +01:00
Irmen de Jong
5071da6784
retain constants in IR
...
some IR related cleanups
2024-12-24 00:30:08 +01:00
Irmen de Jong
4c1e2f3110
refactor package nesting of ast exception classes
2024-12-23 18:14:46 +01:00
Irmen de Jong
2727a4dcb3
tweak DataType class and memsizer related to subtypes/elementtypes
2024-12-23 17:28:25 +01:00
Irmen de Jong
d70cfbb661
added sorting module and sortingbench example
2024-12-21 06:18:35 +01:00
Irmen de Jong
5482ac0302
simplify grammar of @tags, also improving their error message
2024-12-21 01:44:58 +01:00
Irmen de Jong
131d5ceb4f
avoid re-reading all source files when sourcelines are requested in the asm
2024-12-21 00:06:18 +01:00
Irmen de Jong
512ddd1694
cleanups
2024-12-20 22:59:20 +01:00
Irmen de Jong
73baaeff1f
avoid compiler crash when using char literal in str initialization
...
fix compiler crash when using str var in an expression without &
2024-12-18 15:08:45 +01:00