Irmen de Jong
|
189399d5f8
|
update to kotlin 2.1.0
|
2024-11-28 03:49:07 +01:00 |
|
Irmen de Jong
|
2e35f3c3a3
|
code check cleanups
|
2024-11-24 16:14:22 +01:00 |
|
Irmen de Jong
|
5c6bd9c091
|
register params support for normal subroutines
|
2024-11-24 15:56:54 +01:00 |
|
Irmen de Jong
|
90f1e7fd6a
|
ast printing fixes, added alias to syntax files
|
2024-11-24 07:28:33 +01:00 |
|
Irmen de Jong
|
cc53d698bf
|
added msw() and lsw() builtin functions (experimental)
|
2024-11-24 03:53:37 +01:00 |
|
Irmen de Jong
|
cb86206698
|
added unary ^ and << operators (experimental) (gets bank and address of a long integer)
|
2024-11-24 03:07:18 +01:00 |
|
Irmen de Jong
|
cc13a51493
|
fix import order problem related to %option merge
|
2024-11-23 12:15:15 +01:00 |
|
Irmen de Jong
|
f569ce6141
|
setting a byte >=128 or word >=32768 now results in an out-of-range error, instead of an invalid casted value
|
2024-11-22 21:24:04 +01:00 |
|
Irmen de Jong
|
5c09dc10ae
|
convert build.gradle to build.gradle.kts (kotlin DSL)
|
2024-11-20 23:23:26 +01:00 |
|
Irmen de Jong
|
35c477b5a6
|
Make extsub address a (constant) expression instead of a numeric literal
this makes it easier to define API jump tables
|
2024-11-20 23:23:26 +01:00 |
|
Irmen de Jong
|
984230e8fa
|
removed txt.VERA_TEXTMATRIX_BANK/VERA_TEXTMATRIX_ADDR it's now just txt.VERA_TEXTMATRIX (long const)
|
2024-11-20 23:22:56 +01:00 |
|
Irmen de Jong
|
a874aec6a1
|
implementing const long
|
2024-11-20 23:22:56 +01:00 |
|
Irmen de Jong
|
fb0d9b46b0
|
remove 'romsub' as a recognised alternative for 'extsub'
|
2024-11-20 23:22:56 +01:00 |
|
Irmen de Jong
|
d640cfbe13
|
removed BuiltinFunctionCallStatement redundant ast node type
|
2024-11-20 23:22:56 +01:00 |
|
Irmen de Jong
|
51a05ec4b7
|
removed BuiltinFunctionCall redundant ast node type
|
2024-11-20 23:22:56 +01:00 |
|
Irmen de Jong
|
c080fbe59a
|
target machine config tweak and fix possible compiler crash on wrong type name
|
2024-11-13 21:04:46 +01:00 |
|
Irmen de Jong
|
84f5ffa426
|
fix generated labels prefix and filtering in the vice symbol dump file
|
2024-11-10 15:34:35 +01:00 |
|
Irmen de Jong
|
64164c1c72
|
changed @initonce to @dirty and meaning is now: not initialized at all.
|
2024-11-08 22:05:31 +01:00 |
|
Irmen de Jong
|
f89f1a84d0
|
@initonce variable tag to skip variable reinitialization
|
2024-11-08 19:03:48 +01:00 |
|
Irmen de Jong
|
b88f550c5b
|
todo
|
2024-11-07 00:48:13 +01:00 |
|
Irmen de Jong
|
9864abd393
|
romsub keyword is now extsub
|
2024-11-06 22:14:53 +01:00 |
|
Irmen de Jong
|
77e376f6bf
|
romsub @bank now also accepts a variable so the bank can be dynamic
|
2024-11-06 00:02:36 +01:00 |
|
Irmen de Jong
|
85e87dfe2e
|
consolidate @rombank and @rambank into just @bank
|
2024-11-03 21:15:11 +01:00 |
|
Irmen de Jong
|
155896c4c7
|
added @rombank and @rambank bank number tags on romsubs
on cx16 and c128 targets the compiler then automatically inserts a CALLFAR instead of a regular JSR to automatically do the bank switching.
|
2024-11-03 18:19:31 +01:00 |
|
Irmen de Jong
|
178e60bba0
|
fix ast source gen for romsub
|
2024-11-03 15:04:53 +01:00 |
|
Irmen de Jong
|
3b798097b9
|
added memtop to machine definition and asm source code check
added %memtop directive
|
2024-11-02 00:59:07 +01:00 |
|
Irmen de Jong
|
64ea72ed4d
|
tweak plot
|
2024-11-01 21:56:27 +01:00 |
|
Irmen de Jong
|
925b9d845d
|
fix split array possible compiler loop (due to wrong datatype replacement)
|
2024-11-01 19:18:03 +01:00 |
|
Irmen de Jong
|
eeeb8d81f4
|
merge now also allows monkeypatching if signature is 100% identical
|
2024-10-30 01:15:56 +01:00 |
|
Irmen de Jong
|
518e5a30c2
|
slight parser rule tweak
|
2024-10-29 23:18:17 +01:00 |
|
Irmen de Jong
|
bbba4b3d60
|
new block merge semantics and implementation
|
2024-10-29 22:57:54 +01:00 |
|
Irmen de Jong
|
a82f211f9a
|
added alias statement
|
2024-10-28 00:36:10 +01:00 |
|
Irmen de Jong
|
504c80cddf
|
fix parser rule for identifiers (void is a keyword, not an identifier)
|
2024-10-27 15:57:27 +01:00 |
|
Irmen de Jong
|
c9535049c8
|
%align directive and @align64
|
2024-10-26 20:58:35 +02:00 |
|
Irmen de Jong
|
1cd754f05d
|
adding @alignword/page on individual variables
|
2024-10-26 17:00:38 +02:00 |
|
Irmen de Jong
|
1e82483152
|
ast printer correctly prints ifexpression
|
2024-10-22 21:14:55 +02:00 |
|
Irmen de Jong
|
6e2fd41a8b
|
ast printer correctly prints unroll and continue
|
2024-10-22 21:14:26 +02:00 |
|
Irmen de Jong
|
9851d14fb9
|
added if expression: ubyte a = if b>0 44 else 55
it doesn't generate the best code yet, like regular ifs do.
|
2024-10-19 15:34:04 +02:00 |
|
Irmen de Jong
|
ce7d094adb
|
Zig-like "defer" to clean up stuff when leaving the scope of the current routine.
|
2024-10-18 01:30:20 +02:00 |
|
Irmen de Jong
|
a0cf1889a3
|
omit more redundant 0-initializations ("stz's")
|
2024-10-17 22:51:39 +02:00 |
|
Irmen de Jong
|
fa5479ee5f
|
fix ast printing of arrays with duplicate elements
|
2024-10-13 04:30:46 +02:00 |
|
Irmen de Jong
|
ed09dd4e9e
|
improve automatic type conversions for return values, fixes #155
|
2024-10-09 20:04:05 +02:00 |
|
Irmen de Jong
|
7c69d38588
|
scan all asmsubs to see if another subroutine is referenced. Fixes #153
|
2024-10-07 20:39:49 +02:00 |
|
Irmen de Jong
|
fff0d741c3
|
improved parsing of "not in" operator, and [] array signature (allow space)
|
2024-10-02 19:06:20 +02:00 |
|
Irmen de Jong
|
a6107fcfdf
|
taking the address of a romsub is now the constant value of said romsub's declared address
|
2024-09-29 23:53:39 +02:00 |
|
Irmen de Jong
|
df35aa7942
|
added (experimental) compression library
|
2024-09-29 18:59:53 +02:00 |
|
Irmen de Jong
|
4c843571ea
|
fix syntax error check for missing return statement
|
2024-09-26 01:52:33 +02:00 |
|
Irmen de Jong
|
5cda750e5e
|
improve error message for undefined symbol in when choices
|
2024-09-18 23:00:03 +02:00 |
|
Irmen de Jong
|
cac4c1eb1e
|
improve callgraph unused subroutine check for routines called from inline asm
|
2024-09-16 21:49:30 +02:00 |
|
Irmen de Jong
|
0d3ad80659
|
retain type of consts better to avoid precision loss
this also fixed a difference in const calculation where the result could differ if you were using optimzations or not.
|
2024-09-14 21:06:21 +02:00 |
|