|
|
59f056734f
|
Added c65cm stdlib as embedded into the c65gm exe so it's completely self contained, for easy distribution.
|
2026-04-17 11:53:20 +02:00 |
|
|
|
5f25d66aeb
|
bit shift operators prefer shifting in ACC if possible
|
2026-04-15 07:11:56 +02:00 |
|
|
|
822326f993
|
Optimizations of shift operators
|
2026-04-15 03:03:35 +02:00 |
|
|
|
0357df9873
|
Added right and left shift operators
|
2026-04-15 01:29:38 +02:00 |
|
|
|
bc6fdaf8f2
|
Also removing all function vars, consts and labels when a function is removed on pragma _P_REMOVE_UNUSED
|
2026-04-13 21:28:16 +02:00 |
|
|
|
bd4dc5d885
|
Updated tests so they work with new FuncHandler signature
|
2026-04-13 20:29:45 +02:00 |
|
|
|
652e147298
|
Added functionality to cull unused functions (by pragma _P_REMOVE_UNUSED)
|
2026-04-13 19:57:16 +02:00 |
|
|
|
4660b54d70
|
Added unused function warning.
|
2026-04-13 16:59:45 +02:00 |
|
|
|
51b9476a85
|
Fixed disabling some pragmas and test to go with them
|
2026-04-13 16:02:16 +02:00 |
|
|
|
2d2d665ebd
|
Added pragma _P_IGNORE_UNUSED to suppress warnings for unused variables.
|
2026-04-13 15:13:21 +02:00 |
|
|
|
865930b161
|
Cleaned up bitfield handling so it's future proof (OR)
|
2026-04-13 13:36:59 +02:00 |
|
|
|
b400728893
|
Added so line numbers and source files are indicated on types declared but never used
|
2026-04-13 13:16:32 +02:00 |
|
|
|
0bfbfcdde5
|
Now unused vars seem to work
|
2026-04-13 12:57:27 +02:00 |
|
|
|
b25c11ae64
|
First commit refactoring and centralizing constant handling all over
|
2026-04-13 12:21:11 +02:00 |
|
|
|
4f4df41c18
|
Local variable expansion when calling macro
|
2026-03-04 22:32:53 +01:00 |
|
|
|
b614bcb043
|
Added the WORD <name> = @<label | variable> syntax. Initializes a WORD variable with the address of (pointer to) that symbol.
|
2026-02-24 23:04:58 +01:00 |
|
|
|
4acd8f2e87
|
Local variable expansion and macro expansion in ASM block now takes into account comments and ommits those.
|
2026-02-13 09:29:40 +01:00 |
|
|
|
83a0a20393
|
Added SCRIPT MACRO blocks
|
2026-02-11 13:56:21 +01:00 |
|
|
|
c6b67f8044
|
Added SCRIPT LIBRARY block for reusable StarLark code.
|
2026-02-11 13:25:07 +01:00 |
|
|
|
d717002b27
|
Updated FOR loop to do check at NEXT instead of at FOR handling edge cases 255 and 65536 better. Removed STEP
|
2026-01-11 14:45:15 +01:00 |
|
|
|
275f4782c8
|
Made error messages display the source and some context.
|
2026-01-03 12:05:02 +01:00 |
|
|
|
ebad3c2e16
|
Added call graph functionality and analysis/warning of absolute address variable reuse overlap
|
2026-01-02 15:15:57 +01:00 |
|
|
|
35e4b77ee3
|
optimized xor generation somewhat.
|
2026-01-02 14:10:53 +01:00 |
|
|
|
e33460d84d
|
Added SWITCH/CASE/DEFAULT/ENDSWITCH
|
2025-12-19 22:56:16 +01:00 |
|
|
|
5f01282df5
|
Fixed so functions can do type conversion between in/out params and arguments. Lossy conversions give a warning now.
|
2025-12-12 14:11:31 +01:00 |
|
|
|
22e6759409
|
Minor optimization on FOR when assignment and loop var is the same
|
2025-11-27 16:25:33 +01:00 |
|
|
|
23a721217d
|
Fixed up memlib.c65 and added errors to POKEW and PEEKW if using the same variable for pointer and value.
|
2025-11-22 11:26:19 +01:00 |
|
|
|
8f947f7149
|
Fixed func calls with string literal arguments and $-replacements in #DEFINE. memlib.c65 is still borked.
|
2025-11-21 16:27:57 +01:00 |
|
|
|
040c03467b
|
Fixed to function without params can be called as myfunction() with empty parens
|
2025-11-21 10:59:51 +01:00 |
|
|
|
c6b3e619c3
|
Added xor (^) operator to constant expressions
|
2025-11-20 22:01:23 +01:00 |
|
|
|
1617297067
|
New syntax to PEEK and added tests
|
2025-11-20 20:19:45 +01:00 |
|
|
|
315be292bf
|
Added sensible handling for byte iterators
|
2025-11-18 23:23:05 +01:00 |
|
|
|
4f51572477
|
Changed for to not implement DOWNTO.
|
2025-11-17 23:58:51 +01:00 |
|
|
|
ee74135839
|
Fixed up comparision operator for FOR
|
2025-11-17 22:58:58 +01:00 |
|
|
|
37296cf627
|
First non-working version of FOR/NEXT loops. (tests failing)
|
2025-11-17 22:19:20 +01:00 |
|
|
|
4b5f8b30b7
|
Renamed loop stacks to prepare for FOR loop
|
2025-11-17 21:20:29 +01:00 |
|
|
|
c8c1d7e705
|
Added support for absolute variable declarations in func declarations.
|
2025-11-17 20:40:24 +01:00 |
|
|
|
c543dde600
|
Changed binary prefix from ! to % (as acme)
|
2025-11-09 12:15:50 +01:00 |
|
|
|
d57a40a7cf
|
Improved funchandler.go HandleFuncCall to handle consts and expressions better
|
2025-11-08 13:46:41 +01:00 |
|
|
|
2dc591f40d
|
Optimized equality and non equality tests with zero in comparison.go
|
2025-11-06 07:09:19 +01:00 |
|
|
|
af315647bd
|
Added Starlark scripting language for SCRIPT blocks.
|
2025-11-06 06:57:06 +01:00 |
|
|
|
d09a039697
|
Generate ASM, ENDASM and SCRIPT, ENDSCRIPT asm comments in output
|
2025-11-06 05:35:27 +01:00 |
|
|
|
6085bccad3
|
Added all peeks, pokes, pointer, gosub and subend
|
2025-11-05 23:23:56 +01:00 |
|
|
|
5b3e5737b8
|
Added label and origin commands.
|
2025-11-05 19:29:35 +01:00 |
|
|
|
aedc605445
|
Added goto
|
2025-11-05 19:14:26 +01:00 |
|
|
|
bacd4851ef
|
Added incr and decr and also local variable expansion in asm blocks.
|
2025-11-05 18:49:54 +01:00 |
|
|
|
7ac90260af
|
Added function handling using FuncHandler
|
2025-11-05 18:08:25 +01:00 |
|
|
|
afc340d52d
|
IF and WHILE now take single operator
|
2025-11-04 20:47:04 +01:00 |
|
|
|
3d6f786949
|
Updated while_test.go to new code generation. Added new versions of IF, ELSE, ENDIF based on comparison.go
|
2025-11-04 20:01:52 +01:00 |
|
|
|
df7e5349ac
|
Optimized operand byte and lo-byte comparisons.
|
2025-11-04 19:14:09 +01:00 |
|