Irmen de Jong
54d41b7f6f
fixed a[i]^^
2025-07-05 23:54:08 +02:00
Irmen de Jong
0541b84d09
Merge branch 'master' into structs
2025-06-29 16:34:32 +02:00
Irmen de Jong
6a9a82ff9d
doc
2025-06-27 18:14:36 +02:00
markjreed
aa36e6b19f
flesh out C128-specific KERNAL calls ( #170 )
...
* flesh out C128-specific KERNAL calls
* fix: typo in comment
* fix: typo in comment
* fix: include return values of INDCMP
* fix: rearrange return values of INDCMP
2025-06-27 18:13:26 +02:00
Irmen de Jong
51cb6aad50
add c128.PRIMM()
2025-06-27 17:39:31 +02:00
Irmen de Jong
bd72eaad4c
Merge branch 'refs/heads/master' into structs
...
# Conflicts:
# examples/test.p8
2025-06-18 17:53:20 +02:00
Irmen de Jong
b5d1575823
added boolean typed versions of the cx16.r0-r15 virtual registers
2025-06-18 00:05:10 +02:00
Irmen de Jong
1d306e5cdc
moved new animalgame
2025-06-17 23:21:54 +02:00
Irmen de Jong
b137164fe6
allow str assigned to ^^ubyte without an explicit cast
2025-06-17 18:29:48 +02:00
Irmen de Jong
67d4ad50e1
add new animals example (that uses a pointer tree)
2025-06-17 01:08:36 +02:00
Irmen de Jong
c71066af4c
fixing name lookup issue
2025-06-16 22:15:51 +02:00
Irmen de Jong
6f0a0981bd
fixing name lookup issue
2025-06-16 00:21:54 +02:00
Irmen de Jong
49a4d9ba37
allow str as struct field type (^^ubyte) and strings in struct initializers
2025-06-15 00:29:59 +02:00
Irmen de Jong
fcdfa741b9
Merge branch 'master' into structs
...
# Conflicts:
# compiler/src/prog8/compiler/astprocessing/AstPreprocessor.kt
2025-06-14 21:07:23 +02:00
Irmen de Jong
e3e395836d
fix splitting of array decl and initializer for non numeric types
2025-06-13 23:31:56 +02:00
Irmen de Jong
3bab177d50
working on pointers/binarytree example
2025-06-13 23:20:15 +02:00
Irmen de Jong
12abafb917
Merge branch 'master' into structs
...
# Conflicts:
# docs/source/todo.rst
# examples/test.p8
# gradle.properties
2025-06-12 00:11:58 +02:00
Irmen de Jong
8dc2e47507
fix partial unused code removal in vm target
2025-06-11 23:31:29 +02:00
Irmen de Jong
0be90dedf2
check for split word array as argument
2025-06-11 21:35:36 +02:00
Irmen de Jong
daf7c3357c
better detection of missing return statement
...
preparing 11.4
2025-06-09 16:01:56 +02:00
Irmen de Jong
e6bab3ceeb
IR: adding LOADFIELD and STOREFIELD instructions
2025-06-09 01:41:45 +02:00
Irmen de Jong
59387b2ae8
Merge branch 'master' into structs
...
# Conflicts:
# docs/source/todo.rst
# examples/test.p8
2025-06-07 20:28:23 +02:00
Irmen de Jong
e8795859c5
added sorting library for target virtual
...
added sorting routines that sort a values array together with the keys array
optimized gnomesort a little
2025-06-07 19:42:40 +02:00
Irmen de Jong
bebe60b687
fix compiler crash on for x in wordvar, add sys.get_as_returnaddress()
2025-06-05 16:10:40 +02:00
Irmen de Jong
ddceec364e
optimized coroutines library
2025-06-04 21:34:32 +02:00
Irmen de Jong
f8f20440d3
allow pointer to be treated as uword value in augmented assignments
2025-06-03 21:33:35 +02:00
Irmen de Jong
f8722faa4e
Merge branch 'master' into structs
...
# Conflicts:
# examples/test.p8
2025-06-03 21:15:19 +02:00
Irmen de Jong
d067fa4b73
added strings.find_eol()
2025-06-03 21:09:44 +02:00
Irmen de Jong
d5cc414221
Merge branch 'master' into structs
...
# Conflicts:
# codeOptimizers/src/prog8/optimizer/StatementOptimizer.kt
# compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt
# compilerAst/src/prog8/ast/antlr/Antlr2Kotlin.kt
# examples/test.p8
2025-06-02 20:52:50 +02:00
Irmen de Jong
b5e51ab937
cleaner timings output
2025-06-02 19:30:25 +02:00
Irmen de Jong
15fc3b6c04
replace old antlr2kotlin code with the new visitor-based translator
2025-06-02 01:56:07 +02:00
Irmen de Jong
0456badd02
creating on a new visitor-based antlr to kotlin translator
2025-06-02 01:18:07 +02:00
Irmen de Jong
d28f154f1c
Merge branch 'master' into structs
...
# Conflicts:
# examples/test.p8
# parser/src/main/antlr/Prog8ANTLR.g4
2025-06-01 17:53:41 +02:00
Irmen de Jong
a87f2640d3
fixed signed byte comparisons in case of overflowing values
2025-06-01 14:01:25 +02:00
Irmen de Jong
a90ef274d7
fix word*128 codegen.
...
added cx16/landscape.p8 example that draws procedurally generated landscapes.
found bug in signed byte comparisons with overflow.
2025-05-31 05:27:19 +02:00
Irmen de Jong
77584493fd
support a.b.ptr[i]^^.value as expression (RHS)
2025-05-30 20:28:10 +02:00
Irmen de Jong
a36709e638
Merge branch 'master' into structs
...
# Conflicts:
# compiler/src/prog8/compiler/Compiler.kt
2025-05-30 12:39:23 +02:00
Irmen de Jong
341778ba67
added -timings flag
2025-05-30 12:38:16 +02:00
Irmen de Jong
8d63cce749
working on deref after array indexing
2025-05-30 11:30:49 +02:00
Irmen de Jong
8e7bbcdbe0
clear syntax error for yet unsupported deref after array indexing
2025-05-29 21:14:38 +02:00
Irmen de Jong
37ecdc47b3
allow ptr1^^ = ptr^^ (replaces it with memcopy)
2025-05-29 16:34:47 +02:00
Irmen de Jong
112ca3cc53
allow sizeof(&thing), add sys.SIZEOF_POINTER
2025-05-29 15:58:29 +02:00
Irmen de Jong
33b3a1664c
replace sizeof(list^^) with sizeof(List) to allow it to compile. Same with simple pointers.
2025-05-29 14:13:42 +02:00
Irmen de Jong
8a0c02e264
Merge branch 'refs/heads/master' into structs
...
# Conflicts:
# codeCore/src/prog8/code/target/NormalMemSizer.kt
# codeCore/src/prog8/code/target/VMTarget.kt
# compiler/src/prog8/compiler/BuiltinFunctions.kt
# compilerAst/src/prog8/ast/antlr/Antlr2Kotlin.kt
# examples/test.p8
2025-05-29 13:42:16 +02:00
Irmen de Jong
34bedbeef1
optimize byte modulus (%) routine with repeated subtraction instead of using full division
2025-05-29 13:26:04 +02:00
Irmen de Jong
3b1b0985c1
make sizeof(float) work, so you don't have to use sys.SIZEOF_FLOAT anymore etc.
...
define sys.SIZEOF_FLOAT in terms of sizeof(float)
2025-05-29 12:38:03 +02:00
Irmen de Jong
4c0e6e2640
fix split/nosplit pointer arrays, replace ubyteptr^^ with @(ubyteptr), fix double dereference
2025-05-29 00:36:55 +02:00
Irmen de Jong
08b314c37d
IR: fix various register type mismatches
2025-05-28 22:15:07 +02:00
Irmen de Jong
86da9d3c7e
assigning to plain pointer with array indexing
2025-05-28 18:08:53 +02:00
Irmen de Jong
4e61e25c02
Merge branch 'master' into structs
...
# Conflicts:
# compiler/test/TestTypecasts.kt
2025-05-27 23:52:59 +02:00