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
|
ec50b5a007
|
homebrew info
|
2025-05-30 03:43:03 +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
|
31d84c8921
|
doc
|
2025-05-29 13:35:20 +02:00 |
|
Irmen de Jong
|
e40ace9dea
|
todo
|
2025-05-29 01:35:53 +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
|
86da9d3c7e
|
assigning to plain pointer with array indexing
|
2025-05-28 18:08:53 +02:00 |
|
Irmen de Jong
|
5097d52d99
|
IR codegen for pointer indexing expressions, -assignment
|
2025-05-27 23:41:08 +02:00 |
|
Irmen de Jong
|
09d2185bb1
|
PtArrayIndexer variable is now nullable (because it could be a ptr deref instead)
|
2025-05-25 23:04:32 +02:00 |
|
Irmen de Jong
|
5c02e2bd71
|
fix a ptr indexing case, fix address-of fields
|
2025-05-25 21:32:31 +02:00 |
|
Irmen de Jong
|
fb01389b3d
|
cleaning up pointer deref
|
2025-05-25 18:33:37 +02:00 |
|
Irmen de Jong
|
aaa81210ce
|
cleaning up pointer indexing
|
2025-05-25 02:56:32 +02:00 |
|
Irmen de Jong
|
23a853db1e
|
Merge branch 'master' into structs
# Conflicts:
# compiler/src/prog8/compiler/astprocessing/AstChecker.kt
# examples/test.p8
|
2025-05-23 19:00:59 +02:00 |
|
Irmen de Jong
|
9da430ffeb
|
vm: more complete V-flag handling. somd doc and todo updates.
|
2025-05-23 18:58:14 +02:00 |
|
Irmen de Jong
|
844b537d1e
|
cobramk3 example now draws with new monogfx doublebuffering
|
2025-05-22 23:29:49 +02:00 |
|
Irmen de Jong
|
caf1d4a22a
|
fix monogfx INVERT draw mode
|
2025-05-22 21:29:23 +02:00 |
|
Irmen de Jong
|
d8e244df99
|
fix monogfx example
|
2025-05-22 00:37:20 +02:00 |
|
Irmen de Jong
|
548e421e27
|
added doublebuffering to monogfx (in both lores and hires mode)
|
2025-05-22 00:10:03 +02:00 |
|
Irmen de Jong
|
1c4999ec87
|
adding ptr unit tests
|
2025-05-20 20:57:05 +02:00 |
|
Irmen de Jong
|
c726d3f937
|
fix ptr errors
|
2025-05-19 22:49:07 +02:00 |
|
Irmen de Jong
|
f70341df1b
|
fix ptr errors
|
2025-05-19 20:06:31 +02:00 |
|
Irmen de Jong
|
f0b791452e
|
fix many ptr deref errors
|
2025-05-19 01:33:57 +02:00 |
|
Irmen de Jong
|
770ebdcd4a
|
party fix weird errors for ptr indexed assignment
|
2025-05-17 20:54:02 +02:00 |
|
Irmen de Jong
|
eabdd3a8f3
|
fix the ptr.uword[index] assignment target error
|
2025-05-17 14:57:24 +02:00 |
|
Irmen de Jong
|
50650b966b
|
repeat countervars again in zeropage if possible, fix pointer arithmetic error
|
2025-05-17 14:18:56 +02:00 |
|
Irmen de Jong
|
65e34d4989
|
stricter types for & operator (address-of), and fix invalid recursive subroutine flagging related to struct definition
|
2025-05-17 11:32:54 +02:00 |
|
Irmen de Jong
|
05dad5ab5f
|
cleanup 6502 pointer usage checks
|
2025-05-16 21:44:28 +02:00 |
|
Irmen de Jong
|
435faafaad
|
fix split-word storage (lsb/msb) of arrays of pointers
|
2025-05-16 17:53:15 +02:00 |
|
Irmen de Jong
|
686b32dc29
|
replace ^^str by ^^ubyte and allow returning ubyte/uword when pointer is expected
|
2025-05-16 17:53:15 +02:00 |
|
Irmen de Jong
|
0e64a22910
|
tweak address-of types
|
2025-05-16 17:53:15 +02:00 |
|
Irmen de Jong
|
4f0839f27e
|
rewrite pointer[0] into @(pointer) if its ^^ubyte
|
2025-05-16 17:53:15 +02:00 |
|
Irmen de Jong
|
cd8aae4681
|
allow @(..) to take a ^^ubyte address pointer, not only uwords.
|
2025-05-15 22:12:42 +02:00 |
|
Irmen de Jong
|
86eef7039f
|
@(..) now also accepts pointer to ubyte address
|
2025-05-15 20:07:02 +02:00 |
|
Irmen de Jong
|
f4b2264fcf
|
fix struct type checks for subroutine call arguments
|
2025-05-14 23:33:55 +02:00 |
|
Irmen de Jong
|
9b36ae2277
|
implement inplace boolean short-circuit operators on pointer dereferenced booleans
|
2025-05-14 21:29:50 +02:00 |
|
Irmen de Jong
|
913ab03963
|
get rid of invalid ARRAY_STRUCT data type (arrays of struct instance are not yet supported)
|
2025-05-14 20:43:00 +02:00 |
|
Irmen de Jong
|
38448e471c
|
Merge branch 'master' into structs
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/ForLoopsAsmGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/IRCodeGen.kt
# examples/test.p8
|
2025-05-13 23:42:13 +02:00 |
|
Irmen de Jong
|
67231af623
|
fix forloop codegen over non-split word arrays of length >= 64 elements
|
2025-05-13 23:32:26 +02:00 |
|
Irmen de Jong
|
d8e2116481
|
different temp var mechanism for for loops, and pokef()
|
2025-05-13 21:06:33 +02:00 |
|
Irmen de Jong
|
ba93966474
|
optimize codegen: shortcut redundant jumps in when statement
|
2025-05-13 00:35:22 +02:00 |
|
Irmen de Jong
|
082265fb25
|
todo
|
2025-05-12 00:24:57 +02:00 |
|
Irmen de Jong
|
924e28e9b3
|
Merge branch 'master' into structs
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/AsmGen.kt
# compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt
# compiler/src/prog8/compiler/astprocessing/SimplifiedAstMaker.kt
# compilerAst/src/prog8/ast/AstToSourceTextConverter.kt
# compilerAst/src/prog8/ast/antlr/Antlr2Kotlin.kt
# compilerAst/src/prog8/ast/walk/AstWalker.kt
# compilerAst/src/prog8/ast/walk/IAstVisitor.kt
# docs/source/todo.rst
# examples/test.p8
# parser/src/main/antlr/Prog8ANTLR.g4
|
2025-05-11 23:23:06 +02:00 |
|
Irmen de Jong
|
e5d9af75de
|
remove double bra/jmp
|
2025-05-11 23:01:13 +02:00 |
|
Irmen de Jong
|
31c1bf8bc5
|
added on..goto/call statement
|
2025-05-11 21:37:44 +02:00 |
|
Irmen de Jong
|
37d4055036
|
translate newline '\n' to char code 13 in various encodings such as ISO (used to be 10)
This means that when printed, such newlines will now properly go to the next line in these encodings too (ISO variants, KATAKANA).
|
2025-05-11 19:45:24 +02:00 |
|