Irmen de Jong
|
4a8ee6815a
|
merge
|
2023-07-28 03:34:58 +02:00 |
|
Irmen de Jong
|
e1b6bb154a
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# compiler/res/prog8lib/cx16/gfx2.p8
# docs/source/todo.rst
# examples/test.p8
|
2023-07-28 02:09:45 +02:00 |
|
Irmen de Jong
|
e520921746
|
todo
|
2023-07-26 23:16:43 +02:00 |
|
Irmen de Jong
|
970642244b
|
optimized gfx2.text() for hires 4c mode
|
2023-07-26 04:17:44 +02:00 |
|
Irmen de Jong
|
3b90be2d9e
|
gfx2.text() per-pixel positioning implemented for screen modes 1 and 5
|
2023-07-25 00:43:45 +02:00 |
|
Irmen de Jong
|
65a7a8caf8
|
fix and optimize gfx2.position2(), added cx16.vaddr_clone()
|
2023-07-24 00:04:47 +02:00 |
|
Irmen de Jong
|
7cf6aba625
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# examples/test.p8
|
2023-07-22 23:37:20 +02:00 |
|
Irmen de Jong
|
0adce9b9c6
|
removed complexity restriction on array indexing expressions
|
2023-07-22 22:11:30 +02:00 |
|
Irmen de Jong
|
0e781d18fa
|
cx16: added cx16.vaddr_autoincr() and cx16.vaddr_autodecr()
|
2023-07-21 23:04:21 +02:00 |
|
Irmen de Jong
|
4575a8fffe
|
cx16: added cx16.vaddr_autoincr() and cx16.vaddr_autodecr()
|
2023-07-21 22:40:07 +02:00 |
|
Irmen de Jong
|
7136b33f2e
|
cx16: change reset_system() to use Reset SMC sequence instead of hard reboot
|
2023-07-20 01:59:20 +02:00 |
|
Irmen de Jong
|
70a78e74f6
|
get rid of binexpr splitter
|
2023-07-20 01:36:43 +02:00 |
|
Irmen de Jong
|
d5707b7bf3
|
rebuilding floating point stack evaluation (using cpu stack)
|
2023-07-20 00:45:04 +02:00 |
|
Irmen de Jong
|
9f247901d4
|
Merge branch 'master' into remove_evalstack
# Conflicts:
# codeGenCpu6502/src/prog8/codegen/cpu6502/BuiltinFunctionsAsmGen.kt
# codeGenCpu6502/src/prog8/codegen/cpu6502/assignment/AssignmentAsmGen.kt
# compiler/src/prog8/buildversion/BuildVersion.kt
# examples/test.p8
|
2023-07-16 23:45:04 +02:00 |
|
Irmen de Jong
|
5659742d97
|
fixed assigning byte to word not clearing msb sometimes
|
2023-07-16 23:16:32 +02:00 |
|
Irmen de Jong
|
47485e4b49
|
added more missing codegen for bit shifts
|
2023-07-16 17:42:10 +02:00 |
|
Irmen de Jong
|
64254e758d
|
cleaned up cx16 keyboardhandler example and some compiler warnings for redundant else
|
2023-07-16 13:23:53 +02:00 |
|
Irmen de Jong
|
3841cef497
|
implemented missing bitshift codegen (non-stack)
|
2023-07-15 22:26:56 +02:00 |
|
Irmen de Jong
|
da57f76de3
|
fix augassign
|
2023-07-15 22:26:56 +02:00 |
|
Irmen de Jong
|
41af63b333
|
remove even more X register save/restore code
|
2023-07-15 22:26:54 +02:00 |
|
Irmen de Jong
|
6033a9e20c
|
remove optfloatx option
|
2023-07-15 22:24:22 +02:00 |
|
Irmen de Jong
|
9e8c8973d8
|
remove eval stack references from asm code
|
2023-07-15 22:24:22 +02:00 |
|
Irmen de Jong
|
3933bf5c1a
|
remove eval stack references from p8 code
|
2023-07-15 22:24:22 +02:00 |
|
Irmen de Jong
|
708e296774
|
remove eval stack assignment source and targets
|
2023-07-15 22:24:22 +02:00 |
|
Irmen de Jong
|
84925ab69c
|
remove eval stack options
|
2023-07-15 22:24:19 +02:00 |
|
Irmen de Jong
|
9cb61fa34d
|
tweaks
|
2023-07-15 20:46:14 +02:00 |
|
Irmen de Jong
|
7c219d235c
|
fixed possible type mismatch error in when statements
|
2023-07-14 23:35:58 +02:00 |
|
Irmen de Jong
|
b8284a147d
|
allow boolean when conditions, optimize into a regular if
|
2023-07-11 21:33:29 +02:00 |
|
Irmen de Jong
|
15ee90e99c
|
no error about missing target when -vm is used.
also version 9.1
|
2023-07-11 18:13:49 +02:00 |
|
Irmen de Jong
|
4e863ecdac
|
vm: fixed abs() and word-to-string conversion
|
2023-07-08 22:57:16 +02:00 |
|
Irmen de Jong
|
e6b158bc97
|
@(..) argument must be of type UWORD
|
2023-07-08 22:34:47 +02:00 |
|
Irmen de Jong
|
4cc0dfa10b
|
comment
|
2023-07-08 11:42:29 +02:00 |
|
Irmen de Jong
|
4ced8889d3
|
cx16: fix signature return values of cx16.screen_mode(), add get_screen_mode() and set_screen_mode() convenience routines
|
2023-07-08 11:37:29 +02:00 |
|
Irmen de Jong
|
d2154f5f2e
|
remove empty when choices, fixes ir compilation error on those
|
2023-07-07 20:34:24 +02:00 |
|
Irmen de Jong
|
71261525e8
|
fix containment check on memory mapped arrays
|
2023-07-07 17:07:34 +02:00 |
|
Irmen de Jong
|
ffb2027a19
|
repeat loop count now always rounded to integer
|
2023-07-06 23:58:02 +02:00 |
|
Irmen de Jong
|
70c9ab9074
|
upgrade libraries
|
2023-07-06 23:33:58 +02:00 |
|
Irmen de Jong
|
6d1fdf1ba6
|
upgrade to Kotlin 1.9.0
|
2023-07-06 23:03:47 +02:00 |
|
Irmen de Jong
|
1f7180d9a8
|
math.multiply_words returns lower 16 bits of the result also in AY (to avoid repeating some load instructions)
|
2023-07-06 22:54:13 +02:00 |
|
Irmen de Jong
|
b4e94ae4dd
|
optimizer: avoid symbol name clash when inlining subroutine
|
2023-07-05 23:15:04 +02:00 |
|
Irmen de Jong
|
07c606bfc9
|
optimizer: don't replace for loop with repeat loop (the loop variable might be used elsewhere!)
|
2023-07-05 21:16:17 +02:00 |
|
Irmen de Jong
|
be64fa674a
|
doc
|
2023-07-03 22:44:50 +02:00 |
|
Irmen de Jong
|
204f5591a9
|
todos
|
2023-07-03 21:57:32 +02:00 |
|
Irmen de Jong
|
ee3e3a3a40
|
optimize text rendering in gfx2
|
2023-07-03 21:45:09 +02:00 |
|
Irmen de Jong
|
f570b70827
|
fix type error with returning an array from a subroutine returning uword
|
2023-07-02 22:09:19 +02:00 |
|
Irmen de Jong
|
c544b7f5ba
|
fixing up p8_ prefixing
|
2023-07-02 21:15:05 +02:00 |
|
Irmen de Jong
|
bdf8aa9168
|
get rid of newexpr compiler option
|
2023-07-02 15:26:04 +02:00 |
|
Irmen de Jong
|
bb95484c8a
|
uniform symbol prefixing with p8_
|
2023-07-02 06:15:09 +02:00 |
|
Irmen de Jong
|
cad18b8a3a
|
uniform symbol prefixing with p8_
|
2023-07-02 06:15:02 +02:00 |
|
Irmen de Jong
|
aac5a4c27f
|
optimize word repeat loop codegen
|
2023-07-02 04:51:22 +02:00 |
|
Irmen de Jong
|
d3f6415387
|
vm: fix repeat 256
|
2023-07-02 02:38:35 +02:00 |
|
Irmen de Jong
|
7649be97b1
|
add git hash to compiler header output
|
2023-06-29 21:01:02 +02:00 |
|
Irmen de Jong
|
c0cb2438d5
|
1-letter symbols now also prefixed with 'p8p_'
to avoid assembly errors caused by confusing variable 'a' with register 'a' etc.
|
2023-06-28 23:17:59 +02:00 |
|
Irmen de Jong
|
bf703a8a66
|
unittest
|
2023-06-27 23:43:35 +02:00 |
|
Irmen de Jong
|
0a83b51e00
|
allow more curly brace styles
|
2023-06-27 01:59:22 +02:00 |
|
Irmen de Jong
|
b0794cf35e
|
added hiram bank number to -varshigh
|
2023-06-27 00:27:34 +02:00 |
|
Irmen de Jong
|
eae41de27d
|
improve errors generated for undefined symbols
|
2023-06-25 15:19:51 +02:00 |
|
Irmen de Jong
|
e9163aa3a7
|
added cx16.save_virtual_registers() and cx16.restore_virtual_registers()
|
2023-06-24 21:04:47 +02:00 |
|
Irmen de Jong
|
8c617515ba
|
don't prefix 3-letter symbols too aggressively (could cause some compilation errors)
|
2023-06-23 23:36:59 +02:00 |
|
Irmen de Jong
|
04e4e71f2e
|
uword == str is now possible (sugar for string.compare)
|
2023-06-22 00:20:30 +02:00 |
|
Irmen de Jong
|
a587482edf
|
optimize dangling else
|
2023-06-18 13:46:02 +02:00 |
|
Irmen de Jong
|
0aac9350d5
|
rename math.atan() to math.atan2()
|
2023-06-18 13:05:36 +02:00 |
|
Irmen de Jong
|
f56c12ee4e
|
cx16 spotlight example
|
2023-06-18 12:49:22 +02:00 |
|
Irmen de Jong
|
ff7f3484e4
|
atan
|
2023-06-17 23:01:47 +02:00 |
|
Irmen de Jong
|
5da3abe6b4
|
fix silent typecast on return statements that could lose data (word->byte)
|
2023-06-17 14:44:36 +02:00 |
|
Irmen de Jong
|
c0b398e0ce
|
add various math.atan() routines
|
2023-06-17 00:43:33 +02:00 |
|
Irmen de Jong
|
b9abf37a7e
|
fix invalid code when subroutines are defined in a repeat loop
|
2023-06-13 00:46:32 +02:00 |
|
Irmen de Jong
|
a521982576
|
fix subroutine inline problem with strings
|
2023-06-09 21:45:05 +02:00 |
|
Irmen de Jong
|
ea6926e57d
|
fix float expression crash: fl = abs/sqrt (fl)+0.5
|
2023-06-09 19:28:34 +02:00 |
|
Irmen de Jong
|
ba25b7fee6
|
fix diskio.diskname(). cx16: add diskio.curdir()
|
2023-06-07 22:38:51 +02:00 |
|
Irmen de Jong
|
7ee162d98b
|
preparing version 9.0
|
2023-06-05 19:47:00 +02:00 |
|
Irmen de Jong
|
1bdae53f4e
|
fix unit tests
|
2023-06-03 21:39:34 +02:00 |
|
Irmen de Jong
|
9314c346da
|
-target option is now required; c64 no longer the default
|
2023-06-03 19:14:45 +02:00 |
|
Irmen de Jong
|
bfaad1388c
|
IR: handle split arrays without new custom opcodes
|
2023-06-03 01:51:02 +02:00 |
|
Irmen de Jong
|
bb35a80177
|
%option splitarrays now also at module level
|
2023-05-31 21:50:41 +02:00 |
|
Irmen de Jong
|
24fc95ac81
|
fix atari target syslib
|
2023-05-31 20:58:00 +02:00 |
|
Irmen de Jong
|
8f864417c4
|
added %option splitarrays (block level)
|
2023-05-31 18:49:21 +02:00 |
|
Irmen de Jong
|
bb9d29b061
|
fix an array literal assignment type error for word arrays
|
2023-05-30 22:46:37 +02:00 |
|
Irmen de Jong
|
b9d8ec1463
|
add -splitarrays command line option
|
2023-05-30 19:08:34 +02:00 |
|
Irmen de Jong
|
bbc02752c9
|
use split word arrays in various examples, fix codegen issue, docs
|
2023-05-29 15:34:33 +02:00 |
|
Irmen de Jong
|
9896bc110e
|
fix some split array issues in 6502 codegen
|
2023-05-28 22:49:33 +02:00 |
|
Irmen de Jong
|
ca60f8ecdd
|
Merge branch 'master' into split-arrays
|
2023-05-28 22:35:16 +02:00 |
|
Irmen de Jong
|
544acd1e35
|
Merge branch 'v8_maintenance'
|
2023-05-28 22:30:52 +02:00 |
|
Irmen de Jong
|
6e07602d77
|
fix psg initial envelope maxvol setting
|
2023-05-28 22:30:34 +02:00 |
|
Irmen de Jong
|
82898f7bba
|
fix some split array issues in 6502 codegen
|
2023-05-28 22:24:56 +02:00 |
|
Irmen de Jong
|
39eda67867
|
Merge branch 'master' into split-arrays
# Conflicts:
# examples/test.p8
|
2023-05-28 13:28:43 +02:00 |
|
Irmen de Jong
|
a99d38fdaa
|
Merge branch 'v8_maintenance'
# Conflicts:
# examples/test.p8
|
2023-05-28 13:26:05 +02:00 |
|
Irmen de Jong
|
0eb2d437e2
|
fix compiler error and codegen fault on signed value bitwise operation
|
2023-05-28 13:13:11 +02:00 |
|
Irmen de Jong
|
c94e292176
|
more split array stuff
|
2023-05-27 12:47:11 +02:00 |
|
Irmen de Jong
|
e18119e24c
|
Merge branch 'master' into split-arrays
|
2023-05-26 19:25:57 +02:00 |
|
Irmen de Jong
|
52a77db60f
|
adding split array type
|
2023-05-26 19:11:07 +02:00 |
|
Irmen de Jong
|
cdbccad21e
|
optimized gfx2 plot and horizontal_line a bit more
|
2023-05-23 20:29:17 +02:00 |
|
Irmen de Jong
|
e15bc68c9b
|
added gfx2.fill() flood fill routine
|
2023-05-23 00:50:10 +02:00 |
|
Irmen de Jong
|
8bffd7672d
|
added sys.irqsafe_set_irqd()/irqsafe_clear_irqd()
|
2023-05-22 21:13:20 +02:00 |
|
Irmen de Jong
|
61df5b3060
|
Merge branch 'v8_maintenance'
# Conflicts:
# compiler/res/prog8lib/cx16/syslib.p8
|
2023-05-22 20:43:05 +02:00 |
|
Irmen de Jong
|
b5255444cd
|
irq-safe irqd handling for RDTIM16
|
2023-05-22 20:36:33 +02:00 |
|
Irmen de Jong
|
0c94e377fc
|
Merge branch 'v8_maintenance'
|
2023-05-21 16:09:31 +02:00 |
|
Irmen de Jong
|
8e5c67b4b2
|
ir: don't refuse complicated array lookup expressions
|
2023-05-21 16:07:19 +02:00 |
|
Irmen de Jong
|
b24f2f1756
|
Merge branch 'v8_maintenance'
# Conflicts:
# compiler/res/prog8lib/cx16/syslib.p8
# examples/test.p8
|
2023-05-21 15:05:17 +02:00 |
|
Irmen de Jong
|
c69c17de42
|
cx16 avoid ram bank issue with RDTIM in sys.wait() and c64.RDTIM16()
|
2023-05-21 15:03:33 +02:00 |
|