Irmen de Jong
50343a18af
Merge branch 'master' into next_compositetypes
...
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/IfElseAsmGen.kt
2024-11-08 19:06:44 +01:00
Irmen de Jong
c702c4a6df
internal rename of romsub to extsub
2024-11-06 21:42:16 +01:00
Irmen de Jong
b14012c9bc
Merge branch 'master' into next_compositetypes
...
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AssignmentAsmGen.kt
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AugmentableAssignmentAsmGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/AssignmentGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/IRCodeGen.kt
# compiler/src/prog8/compiler/astprocessing/AstPreprocessor.kt
# compiler/test/TestZeropage.kt
# compilerAst/src/prog8/ast/statements/AstStatements.kt
# virtualmachine/src/prog8/vm/VirtualMachine.kt
2024-11-02 04:57:28 +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
4a47e15b1c
fix IR if expression sometimes lacking a cmpi after calculation of the condition value
...
VM/IR: add a returni immediate value return instruction to replace certain returnr's
2024-11-01 01:04:16 +01:00
Irmen de Jong
a7a5dda378
merge master
2024-10-26 22:01:56 +02:00
Irmen de Jong
1f2d46628e
remove %option align_xxx (block level alignment, as we now have better alternatives)
2024-10-26 21:18:34 +02:00
Irmen de Jong
c9535049c8
%align directive and @align64
2024-10-26 20:58:35 +02:00
Irmen de Jong
9317cf8a35
sorting aligned vars to shrink prg size
2024-10-26 18:33:51 +02:00
Irmen de Jong
1cd754f05d
adding @alignword/page on individual variables
2024-10-26 17:00:38 +02:00
Irmen de Jong
db0c77c09e
rename
2024-10-19 23:01:41 +02:00
Irmen de Jong
c218234efe
Merge branch 'master' into next_compositetypes
...
# Conflicts:
# codeCore/src/prog8/code/SymbolTable.kt
# codeGenCpu6502/src/prog8/codegen/cpu6502/ProgramAndVarsGen.kt
# compiler/test/TestSymbolTable.kt
# examples/test.p8
# intermediate/src/prog8/intermediate/IRFileReader.kt
# intermediate/src/prog8/intermediate/IRSymbolTable.kt
# intermediate/src/prog8/intermediate/Utils.kt
# virtualmachine/src/prog8/vm/VmProgramLoader.kt
2024-10-16 22:40:45 +02:00
Irmen de Jong
38ef394e15
IR codegen: global vars with numeric initialization value are now also put into the VARIABLESWITHINIT section rather than requiring explicit code instructions to initialize them in INITGLOBALS.
...
Note that something similar, such as putting those variables inline in the program initialized with their value and all, cannot be done for the 6502 codegen: the program needs a mechanism to reset ALL variables when it runs a second time.
2024-10-16 22:15:51 +02:00
Irmen de Jong
cbc4b75e50
IR now contains "bool" as a type instead of already erasing it into "ubyte". (boolean literals still are simply just 1 and 0 values)
2024-10-16 01:03:35 +02:00
Irmen de Jong
65ddcf91d0
remove unused syscalls
2024-10-15 18:24:55 +02:00
Irmen de Jong
0f72bdb4a2
Merge branch 'master' into next_compositetypes
...
# Conflicts:
# codeCore/src/prog8/code/core/BuiltinFunctions.kt
# codeGenCpu6502/src/prog8/codegen/cpu6502/BuiltinFunctionsAsmGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/BuiltinFuncGen.kt
# codeOptimizers/src/prog8/optimizer/ConstantIdentifierReplacer.kt
# compiler/src/prog8/compiler/astprocessing/AstChecker.kt
# compiler/src/prog8/compiler/astprocessing/LiteralsToAutoVars.kt
# compiler/test/ast/TestAstChecks.kt
2024-10-13 21:48:33 +02:00
Irmen de Jong
e9edffa9f0
remove support for array-to-array assignments (other than initialization of variable declaration)
...
Just use an explicit sys.memcopy(src, dest, sizeof(dest)) or assign array members individually.
2024-10-13 20:02:43 +02:00
Irmen de Jong
7afd716fab
Merge branch 'master' into next_compositetypes
...
# Conflicts:
# codeCore/src/prog8/code/core/BuiltinFunctions.kt
# compiler/src/prog8/compiler/astprocessing/AstChecker.kt
# examples/test.p8
2024-10-08 22:58:26 +02:00
Irmen de Jong
eaa22a9d13
added callfar2() builtin function that allows to set A,X,Y and Carry arguments.
2024-10-08 21:36:04 +02:00
Irmen de Jong
8f5d42dbc2
more tests and some cleanups/fixes
2024-09-08 23:01:49 +02:00
Irmen de Jong
759babb4c1
rename back to DataType
2024-09-08 22:59:08 +02:00
Irmen de Jong
5cbf1cd2b1
cleanup imports
2024-09-08 22:58:36 +02:00
Irmen de Jong
e80c22275d
making datatype more capable (subtypes)
2024-09-08 22:58:35 +02:00
Irmen de Jong
74e305b90c
making datatype more capable (subtypes)
2024-09-08 22:57:49 +02:00
Irmen de Jong
edc5a5a94f
improve data driven unit tests to use kotest withData()
2024-09-08 16:55:08 +02:00
Irmen de Jong
d5adb85e5b
IR: add SEC,CLC,SEI,CLI instructions for the sys function calls.
2024-07-14 21:01:19 +02:00
Irmen de Jong
484677b4b1
Get rid of any() and all() builtin functions.
...
Replaced by regular subroutines in the anyall module.
2024-07-06 18:49:03 +02:00
Irmen de Jong
0c053e4a2c
IR: don't confuse symbol names starting with 'r', with register names
...
Added start of buffer.p8 (experimental)
2024-07-04 01:39:25 +02:00
Irmen de Jong
4f8aaf9244
some tweaks and todos
2024-06-26 21:22:40 +02:00
Irmen de Jong
034f27a8dd
added queens example, update kotest lib
2024-06-19 23:57:43 +02:00
Irmen de Jong
c9a4235669
update to kotlin 2.0, fix several code style issues
2024-06-04 01:00:46 +02:00
Irmen de Jong
c719e274d5
java version tweaks
2024-05-18 20:25:44 +02:00
Irmen de Jong
4a710ecdfc
cleanups
2024-05-17 18:48:04 +02:00
Irmen de Jong
7915dda35f
update libraries
2024-05-12 03:02:54 +02:00
Irmen de Jong
53df0eb707
cleanups
2024-04-10 22:04:03 +02:00
Irmen de Jong
42f4b06ac8
added options -bytes2float and -float2bytes to be able to do float conversions from the command line
2024-04-09 23:59:54 +02:00
Irmen de Jong
2e37f5dee3
IR: support for multi-returnvalue function calls (asmsubs)
...
note: the VM can't execute these though as it has no CPU hardware registers
2024-03-23 00:30:17 +01:00
Irmen de Jong
66e7c51064
IR: fix some things related to asmsubs
2024-03-22 21:49:01 +01:00
Irmen de Jong
de3d0b40dc
fixed vm problem with branching instructions in global init chunk
2024-03-17 13:22:17 +01:00
Irmen de Jong
80f39e8097
Merge branch 'booleans'
...
# Conflicts:
# compiler/res/prog8lib/cx16/monogfx.p8
# compiler/res/prog8lib/virtual/monogfx.p8
# compiler/src/prog8/compiler/astprocessing/BoolRemover.kt
# compiler/test/TestTypecasts.kt
# docs/source/todo.rst
# examples/cx16/highresbitmap.p8
# examples/test.p8
# httpCompilerService/src/prog8/http/TestHttp.kt
2024-03-11 01:00:48 +01:00
Irmen de Jong
eef8ae00b8
replace str return type by uword
2024-03-09 15:38:46 +01:00
Irmen de Jong
ed15fac691
improve IR error message
2024-03-09 13:38:25 +01:00
Irmen de Jong
f5e332daf7
remove redundant IR instructions like SNZ
2024-03-02 23:19:39 +01:00
Irmen de Jong
41afeccd51
compiler stuff
2024-03-02 23:19:20 +01:00
Irmen de Jong
bc2b38daf4
added PtBool and other changes to intermediate Ast
2024-03-02 23:19:20 +01:00
Irmen de Jong
040d75dafa
VM now supports indirect jump instruction
2024-02-22 16:19:26 +01:00
Irmen de Jong
4e1686f6e3
fix warnings in gradle build scripts
2024-02-22 10:34:51 +01:00
Irmen de Jong
88458f5355
faster array copy and fix for length 256
2024-02-11 23:57:38 +01:00
Irmen de Jong
d7f72056fc
rest of the array copying
2024-02-10 17:16:06 +01:00
Irmen de Jong
906d9d858c
implementing the array copys
2024-02-10 01:40:36 +01:00