| 
							
							
								 Irmen de Jong | bbd06c0c99 | implement peekbool/pokebool on 6502, fix float assignment register error | 2025-08-02 21:38:29 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | d4e83b28bb | error messages and trying to improve support for struct allocs in arrays added sorting example | 2025-08-02 19:22:58 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 08810c2749 | proper error message for unsupported &&subroutine | 2025-07-27 23:44:24 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 817f4f8e7c | Merge branch 'master' into structs # Conflicts:
#	compiler/src/prog8/compiler/Compiler.kt
#	compiler/src/prog8/compiler/astprocessing/AstExtensions.kt
#	compiler/src/prog8/compiler/astprocessing/StatementReorderer.kt
#	docs/source/todo.rst
#	examples/test.p8 | 2025-07-24 22:27:29 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 866313209b | fixed zp vars 0 initialization | 2025-07-24 00:17:31 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 9a9bf170c6 | Merge branch 'master' into structs | 2025-07-06 23:17:00 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 7dd64b4f13 | fix 'cpa' instruction generated in certain boolean assignment, must be 'cmp' | 2025-07-06 22:43:19 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | e14c3f8b59 | code cleanups | 2025-07-06 00:52:37 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 2119817e4a | Merge branch 'master' into structs | 2025-06-24 21:14:53 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | be31e190d2 | shuffle arguments of 64tass command so the additional assembler options from custom targets actually work | 2025-06-19 22:33:50 +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 | daf7c3357c | better detection of missing return statement preparing 11.4 | 2025-06-09 16:01:56 +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 | 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 | 552e55c29f | fix missing cmp #0 when asmsub call is part of a boolean expression | 2025-06-02 19:22:00 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | a228908c1a | fix wrong address calculation for &wordarray[i]  where i is a variable | 2025-06-02 03:13:23 +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 | 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 | 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 | 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 | cc063124cf | add joystick control to cx16 fileselector. fix fileselector Basic exasmple.
fixed too aggressive asm peephole optimization that destroyed %jumptable in libraries for example. | 2025-05-23 17:50:11 +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 | 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 | 09d188106a | different temp var mechanism for certain array expression, remove old tmpvar mechanism. | 2025-05-13 21:12:10 +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 | 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 | 0a3c748e41 | fix code gen bug for certain goto array[idx] | 2025-05-11 17:18:20 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | ebf79ef9e2 | release 11.3.2 | 2025-05-11 12:30:36 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 246e4f35a6 | Merge branch 'master' into structs # Conflicts:
#	codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AssignmentAsmGen.kt
#	codeGenIntermediate/src/prog8/codegen/intermediate/ExpressionGen.kt
#	compiler/test/ast/TestConst.kt
#	docs/source/todo.rst
#	examples/test.p8 | 2025-05-10 16:36:16 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 99b9370178 | fix various bugs around word-indexing combined with address-of:  &buffer[2000] | 2025-05-10 16:22:05 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 8353c689ca | start making '&' (address-of) return a typed pointer, fixes some errors | 2025-05-08 23:40:41 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 134352ed7c | Merge branch 'master' into structs # Conflicts:
#	compiler/test/TestTypecasts.kt
#	docs/source/todo.rst
#	examples/test.p8
#	virtualmachine/src/prog8/vm/VmProgramLoader.kt | 2025-05-07 22:32:41 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | b28ee0819f | revert behavior change of @dirty variables, instead document the initialization behavior correctly in the docs they get zeroed at program startup (like other uninitialized BSS variables), just not on entry in the subroutine. | 2025-05-07 21:07:12 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 701f155951 | Merge branch 'master' into structs # Conflicts:
#	codeGenCpu6502/src/prog8/codegen/cpu6502/ProgramAndVarsGen.kt
#	compiler/test/TestSymbolTable.kt
#	docs/source/todo.rst
#	examples/test.p8
#	intermediate/src/prog8/intermediate/IRFileReader.kt
#	intermediate/src/prog8/intermediate/IRFileWriter.kt
#	intermediate/src/prog8/intermediate/IRSymbolTable.kt
#	simpleAst/src/prog8/code/SymbolTable.kt
#	simpleAst/src/prog8/code/SymbolTableMaker.kt
#	virtualmachine/src/prog8/vm/VmProgramLoader.kt | 2025-05-06 17:59:36 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 522958e0e9 | @dirty variables now actually end up in the uninitialized BSS_NOCLEAR section | 2025-05-06 01:41:34 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 0e0377d1f0 | IR/VM implemented struct allocations and initialization | 2025-05-04 14:04:44 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 55e0dbab27 | preparing for statically allocating struct instances | 2025-05-03 23:44:29 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 40952a788a | PtSub: params and returns now as children (in PtSignature node) for easier Ast walking PtPointerDeref: same but for its start identifier | 2025-05-02 00:41:42 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 0162e7a0c1 | fix the scoping problems on subtypes | 2025-05-02 00:41:42 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | b920d553a0 | make address-of dereference work | 2025-05-02 00:41:42 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | e328520588 | initial struct and typed pointer support | 2025-05-02 00:41:40 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 99ae8ea52e | code cleanup | 2025-04-24 18:51:03 +02:00 |  |