Irmen de Jong
|
88a1aa4f3d
|
fix invalid optimization for integers (X/C1)*C2 , only ok for floats because of int rounding
|
2023-12-01 23:17:49 +01:00 |
|
Irmen de Jong
|
172e78e8f2
|
ir: ignore empty chunks instead of crashing
|
2023-12-01 22:49:20 +01:00 |
|
Irmen de Jong
|
e40ebd75a2
|
floats.parse_f uses kernal VAL if it's present
|
2023-11-30 23:50:50 +01:00 |
|
Irmen de Jong
|
992732f2cb
|
bmx support to save partial screens ('stamps')
|
2023-11-30 22:17:57 +01:00 |
|
Irmen de Jong
|
5d9caef45f
|
bmx can load "stamps"
|
2023-11-29 21:07:22 +01:00 |
|
Irmen de Jong
|
278e2f5605
|
preparing for working kernal FP VAL_1() call
|
2023-11-29 00:27:02 +01:00 |
|
Irmen de Jong
|
1e299bf360
|
better pokef() code
|
2023-11-28 23:04:27 +01:00 |
|
Irmen de Jong
|
8dfa0bc38c
|
fix a compiler crash in certain vardecl initialization expressions
|
2023-11-28 21:01:58 +01:00 |
|
Irmen de Jong
|
ee4da1a757
|
fix floats.parse_f() to use new kernal routine address for VAL
gives error message if it detects issues f.ex. with new kernal version that moves the routine
|
2023-11-27 23:58:28 +01:00 |
|
Irmen de Jong
|
ae2d96c455
|
added peekf and pokef builtin functions. Fixed sizeof() to allow number argument as well.
|
2023-11-27 23:36:02 +01:00 |
|
Irmen de Jong
|
6d8fbe0877
|
fixed float array indexing with an expression
|
2023-11-27 20:54:49 +01:00 |
|
Irmen de Jong
|
2fa1d8f2e8
|
fix vm string hash
|
2023-11-27 01:27:50 +01:00 |
|
Irmen de Jong
|
533090a68e
|
fix expression result register of square, callfar, string compare functions in certain situations
|
2023-11-26 23:02:10 +01:00 |
|
Irmen de Jong
|
1dff59e1d6
|
added string.hash()
|
2023-11-26 22:14:08 +01:00 |
|
Irmen de Jong
|
2764d235a9
|
optimizing for x in 0 to something
|
2023-11-25 21:37:27 +01:00 |
|
Irmen de Jong
|
45debff89f
|
bmx: allow palette to be loaded into memory buffer instead of vram
|
2023-11-25 17:58:43 +01:00 |
|
Irmen de Jong
|
c45fbe6310
|
continue stmt added
|
2023-11-25 01:14:35 +01:00 |
|
Irmen de Jong
|
6a40f23578
|
cx16: added bmx library module and showbmx example
|
2023-11-24 23:39:05 +01:00 |
|
Irmen de Jong
|
82a15b5a16
|
65C02 cpu: use TRB and TSB instructions for in-place AND/OR.
|
2023-11-24 00:50:52 +01:00 |
|
Irmen de Jong
|
98570ac456
|
cx16: optimized sys.set_rasterline()
|
2023-11-23 00:02:04 +01:00 |
|
Irmen de Jong
|
ba67fd318b
|
renamed cx16.VERA_IRQ_LINE_L to VERA_IRQLINE_L and added VERA_SCANLINE_L, to align with official register naming.
Also added a multi-irq example for the X16 to show the updated irq handler semantics.
|
2023-11-22 18:36:24 +01:00 |
|
Irmen de Jong
|
08ac459a41
|
breaking change: sys.set_irq() and sys.set_rasterirq() no longer have useKernal parameter! The irq handler routine must return a boolean instead in the A register.
When it returns true it means run the system IRQ handler afterwards. When it returns false, the system handler is NOT ran afterwards.
|
2023-11-21 23:22:53 +01:00 |
|
Irmen de Jong
|
a83e9d9a0a
|
added sys.save_prog8_internals() and restore_prog8_internals()
|
2023-11-21 22:00:43 +01:00 |
|
Irmen de Jong
|
62d3f01948
|
fix name check in inline asm
this no longer removes a subroutine that is otherwise only called from inlined asm.
|
2023-11-21 01:26:50 +01:00 |
|
Irmen de Jong
|
af5ca2d0b8
|
vm: treat floats as 64 bits doubles. 0.0 printed as "0".
|
2023-11-21 00:57:56 +01:00 |
|
Irmen de Jong
|
2637939e62
|
cx16.vaddr_clone now leaves vera CTRL selected port intact
|
2023-11-17 19:22:23 +01:00 |
|
Irmen de Jong
|
faf05582f8
|
improved cx16 emudbg library
|
2023-11-17 15:07:21 +01:00 |
|
Irmen de Jong
|
161c02ced3
|
message
|
2023-11-17 00:37:12 +01:00 |
|
Irmen de Jong
|
ff8de8e42d
|
removing redundant compares
|
2023-11-16 22:56:19 +01:00 |
|
Irmen de Jong
|
42db3085df
|
improve the way %option merge works, you can now merge your own code with library code for instance.
|
2023-11-14 23:04:13 +01:00 |
|
Irmen de Jong
|
0c9daf6eaf
|
fix compiler crash on ptrvar[n+1] = ptrvar[2]
|
2023-11-14 21:46:11 +01:00 |
|
Irmen de Jong
|
159f80d629
|
next version
|
2023-11-14 19:06:47 +01:00 |
|
Irmen de Jong
|
aa949165c7
|
diskio.f_open_w() error handling back to what it was before
Otherwise it eats the status message. Added comment that you have to check this manually to be sure if the call succeeded or not!
|
2023-11-12 21:14:06 +01:00 |
|
Irmen de Jong
|
d73709653d
|
remove unused interned strings in the resulting code (for example from removed if/else blocks)
|
2023-11-12 05:28:24 +01:00 |
|
Irmen de Jong
|
7ebc9c79cf
|
added string.append()
cleanup redundant diskio prefixes
|
2023-11-10 23:53:59 +01:00 |
|
Irmen de Jong
|
76c09da961
|
make pokemon() be like poke, but also return the old value in the memory location.
|
2023-11-09 22:48:44 +01:00 |
|
Irmen de Jong
|
ee2888e744
|
verafx.mult/muls now return upper 16 bits of the result in r0
|
2023-11-06 21:55:58 +01:00 |
|
Irmen de Jong
|
efe4df92dc
|
optimize when with const value (remove other choices from code)
|
2023-11-06 00:08:07 +01:00 |
|
Irmen de Jong
|
723ab54f97
|
optimized all circle routines a little more. Added gfx2/monogfx safe_circle and safe_disc. Warning for when on const value.
|
2023-11-05 21:29:59 +01:00 |
|
Irmen de Jong
|
e7178ee496
|
optimized comparison with word variables
|
2023-11-05 00:20:12 +01:00 |
|
Irmen de Jong
|
3277544295
|
optimize assigning word array value to byte variable
|
2023-11-04 00:33:50 +01:00 |
|
Irmen de Jong
|
f68b46fc60
|
add a %zpallowed option to specify the range of zeropage register that can be used
|
2023-11-03 00:19:25 +01:00 |
|
Irmen de Jong
|
16b24fadea
|
gfx2 future mode, upgrate to Kotlin 1.9.20
|
2023-11-01 23:18:44 +01:00 |
|
Irmen de Jong
|
2ceaa25181
|
optimized code for (infrequently used) logical operations on word array
|
2023-10-29 23:41:34 +01:00 |
|
Irmen de Jong
|
513611c5a6
|
IR: using EXT more
|
2023-10-29 02:57:21 +01:00 |
|
Irmen de Jong
|
7ec4ba40ad
|
optimize asmsub arg evaluation order and stack usage
|
2023-10-28 17:29:00 +02:00 |
|
Irmen de Jong
|
92374e122b
|
IR: optimize concat with msb 0 into ext
|
2023-10-28 12:53:41 +02:00 |
|
Irmen de Jong
|
94f12732ab
|
add math.diff() and math.diffw()
|
2023-10-27 22:36:43 +02:00 |
|
Irmen de Jong
|
d88c09b098
|
fix signed byte to word casting issue uw = 8888 + (bb as ubyte)
|
2023-10-17 22:54:33 +02:00 |
|
Irmen de Jong
|
893b383bdf
|
fix signed byte to word sign extension in assignment
|
2023-10-17 03:08:37 +02:00 |
|