Irmen de Jong
|
c2a75aa4d2
|
Merge branch 'master' into next_compositetypes
# Conflicts:
# codeOptimizers/src/prog8/optimizer/ConstExprEvaluator.kt
# codeOptimizers/src/prog8/optimizer/ConstantFoldingOptimizer.kt
# compiler/src/prog8/compiler/astprocessing/StatementReorderer.kt
# compiler/src/prog8/compiler/astprocessing/TypecastsAdder.kt
# compilerAst/src/prog8/ast/antlr/Antlr2Kotlin.kt
# compilerAst/src/prog8/ast/statements/AstStatements.kt
# examples/test.p8
|
2024-09-14 21:28:00 +02:00 |
|
Irmen de Jong
|
8834f948aa
|
oops, was fixed
|
2024-09-14 21:17:38 +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 |
|
Irmen de Jong
|
aba1a73e28
|
actually use any @zp etc tags on subroutine parameters
|
2024-09-14 17:42:13 +02:00 |
|
Irmen de Jong
|
dca31b2ca3
|
added gfx_lores module for cx16 for optimized graphics routines for lores 256c screen mode
currently contains a new line() routine
|
2024-09-14 15:30:39 +02:00 |
|
Irmen de Jong
|
0cb378ca31
|
added emudbg.cpu_cycles() and emudbg.reset_cpu_cycles()
|
2024-09-13 23:03:14 +02:00 |
|
Irmen de Jong
|
cf551d2cc7
|
tweak containment check even more
|
2024-09-13 00:02:26 +02:00 |
|
Irmen de Jong
|
f45fd517ac
|
fix merge
|
2024-09-12 23:53:36 +02:00 |
|
Irmen de Jong
|
a737547fe9
|
Merge branch 'master' into next_compositetypes
# Conflicts:
# codeCore/src/prog8/code/ast/AstExpressions.kt
# codeCore/src/prog8/code/optimize/Optimizer.kt
# codeGenCpu6502/src/prog8/codegen/cpu6502/ForLoopsAsmGen.kt
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AssignmentAsmGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/ExpressionGen.kt
# codeGenIntermediate/src/prog8/codegen/intermediate/IRCodeGen.kt
# codeOptimizers/src/prog8/optimizer/StatementOptimizer.kt
# compiler/src/prog8/compiler/astprocessing/LiteralsToAutoVars.kt
# compiler/src/prog8/compiler/astprocessing/VariousCleanups.kt
# docs/source/todo.rst
# examples/test.p8
|
2024-09-12 23:32:23 +02:00 |
|
Irmen de Jong
|
ac0c8a68f6
|
IR: Improve codegen for for loops downto 0/1
|
2024-09-12 23:00:32 +02:00 |
|
Irmen de Jong
|
5986dcdd2f
|
add new containment check codegen for IR
|
2024-09-12 22:04:20 +02:00 |
|
Irmen de Jong
|
6be6eb2227
|
tweak diskio to not always include unused subroutine internal_f_tell() in resulting program
|
2024-09-11 19:51:53 +02:00 |
|
Irmen de Jong
|
d34015eec5
|
fix gfx2.fill() vera CTRL corruption
|
2024-09-11 19:10:45 +02:00 |
|
Irmen de Jong
|
255c5bfaca
|
improve containment check for few values
|
2024-09-11 03:24:30 +02:00 |
|
Irmen de Jong
|
01c6754928
|
get rid of problematic common-subexpression optimization
|
2024-09-11 01:10:42 +02:00 |
|
Irmen de Jong
|
8eaf884f69
|
improve codegen for for loops downto 0,1 when start value is not const
|
2024-09-10 23:54:44 +02:00 |
|
Irmen de Jong
|
699a2bb7ab
|
improved codegen for for loops downto 0
|
2024-09-10 21:33:57 +02:00 |
|
Irmen de Jong
|
4a2dcd20d1
|
fix the "x<2" optimization made a few commits ago to only work on unsigned
|
2024-09-09 23:06:36 +02:00 |
|
Irmen de Jong
|
4e98fb75d6
|
support assigning multiple return flags from asmsub in 6502 codegen
|
2024-09-09 22:56:40 +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
|
a1dfcd07a8
|
fixing things
|
2024-09-08 22:58:40 +02:00 |
|
Irmen de Jong
|
5cbf1cd2b1
|
cleanup imports
|
2024-09-08 22:58:36 +02:00 |
|
Irmen de Jong
|
c41dc98936
|
making datatype more capable (subtypes)
|
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
|
64e66e732f
|
cx16/circles example now uses gfx2
|
2024-09-08 22:52:46 +02:00 |
|
Irmen de Jong
|
7aec627f6b
|
add optimization if x==0 or x==1 -> if x<2
|
2024-09-08 22:39:48 +02:00 |
|
Irmen de Jong
|
59a2fec176
|
fix IR containment check
|
2024-09-08 21:49:13 +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
|
c5b7edad82
|
added memsizer unit tests
|
2024-09-08 15:24:47 +02:00 |
|
Irmen de Jong
|
124ffac4e4
|
readme
|
2024-09-08 11:50:18 +02:00 |
|
Irmen de Jong
|
6d2a36fb2b
|
testcase improvement
|
2024-09-06 22:51:26 +02:00 |
|
Irmen de Jong
|
28b43b3e1d
|
added cx16.EXTAPI_kbd_leds definition (new in kernal R48)
|
2024-09-06 20:47:49 +02:00 |
|
Irmen de Jong
|
f7feaf158d
|
added cx16.mouse_present() routine to check for presence of mouse
|
2024-09-06 18:21:13 +02:00 |
|
Irmen de Jong
|
2396f707c6
|
fix bug in codegen for certain array lookups using word typed index value (i.e. via a pointer variable)
|
2024-09-06 18:11:41 +02:00 |
|
Irmen de Jong
|
d4d8e1b1ba
|
comment about implementation in life example
|
2024-09-06 16:39:44 +02:00 |
|
Irmen de Jong
|
44fec2c729
|
some additional last minute optimization to life example
|
2024-09-06 15:56:41 +02:00 |
|
Irmen de Jong
|
a80a6913e3
|
some additional last minute tweaks to life example
|
2024-09-06 15:42:49 +02:00 |
|
Irmen de Jong
|
0eac04c220
|
added cx16/life.p8 example (Conway's game of life)
|
2024-09-06 15:21:29 +02:00 |
|
Irmen de Jong
|
29dd758302
|
Fix compiler crash in for loops with just 1 iteration
|
2024-09-05 21:26:46 +02:00 |
|
Irmen de Jong
|
5c45adc7f0
|
graphics module on x16 now uses kernal (R48 or newer) support for drawing circles and ovals
|
2024-09-05 20:27:12 +02:00 |
|
Irmen de Jong
|
ad22cf08cd
|
todo
|
2024-09-03 17:46:32 +02:00 |
|
Irmen de Jong
|
2c2ae64194
|
replace java Stack by kotlin ArrayDeque
|
2024-09-02 00:15:28 +02:00 |
|
Irmen de Jong
|
97c2dadd16
|
doc update
|
2024-09-01 20:55:43 +02:00 |
|
Irmen de Jong
|
b36e1e3baf
|
change sprite.hide() : now disables sprite instead of moving it offscreen.
added sprite.show() to re-enable it (with z-order 3, as all sprites have by default in this module)
added sprite.zdepth() to set a custom z-depth.
|
2024-09-01 20:55:43 +02:00 |
|
Irmen de Jong
|
2da35fec17
|
remove requirement to end subroutine with an EOL, so oneliners are now possible
main { sub start() { cx16.r0++ cx16.r1++ } }
|
2024-09-01 20:55:43 +02:00 |
|
Irmen de Jong
|
bdeac74cfc
|
removed the -nostrictbool compiler option
boolean types and bytes are no longer implicitly interchangeable using this option
|
2024-09-01 20:53:39 +02:00 |
|
Irmen de Jong
|
6516d7cb15
|
regenerate skeletons and set version 10.4
|
2024-08-25 16:56:33 +02:00 |
|
Irmen de Jong
|
31cf76042d
|
scope
|
2024-08-25 15:28:45 +02:00 |
|